
Compose (json), we run the new string through the JSON expression.We convert the Array to a string and replace the curly brackets. Select (Replace), we want to work with an object at this point.

You can watch how we might call array elements by integer here. As before, we return the value by using an integer. We return the value by splitting the row by our Delimiter. The header/key is mapped by calling each element by an integer. Select (EachObject), we create a range from 0 to header array length.I have turned on concurrency for maximum efficiency. Each loop is passed an array of row items. Apply To Each, skip the header, and split the Array using the LineEnding.We create an array of header values to be used as keys in the Apply to Each action. Compose (Headers), use a split expression, and the LineEnding on the first element of the file content.0d0a, 0a, or 0d, and setting the value as appropriate. Compose (LineEnding), allows an expression to check for the appearance of one of three return chars.I suggest you watch the following video here on a possible solution. Note that strings containing the separator will cause problems aligning the values/columns. This is to cater for quote encapsulated CSV’s.

I also took the opportunity to replace quotes with an empty string. Compose (FileContent), this is for returning the file content of the Get File Content action.If you want to parse a pipe-delimited or semi colon-delimited, change as appropriate | or Compose (Delimiter), this is a parameter, leave unchanged as a comma.

These data sources need to convert from Base64 Encoding to String. I will also cover SharePoint and email data sources below.
