# Export strings without quotes to a .csv?

Posted 7 months ago
941 Views
|
3 Replies
|
6 Total Likes
|
 Writing a file from Mathematica for use by another program. The output file will be a comma separated file. Content of the file will be a combination of numbers and text. The text in the output file should not have quotes around it. Below is a sample data set and what I have tried so far. row0 = {"h1", "h2", "h3", "h4", "h5", "h6"}; row1 = {"", "", "a1", 1.01, "", ""}; row2 = {"", "", "b1", 2.02, "", ""}; row3 = {"", "", "c1", 3.03, "", ""}; data = {row0, row1, row2, row3}; Export["data.csv", data]; Export["data.txt", data]; Export["data.dat", data]; Export["data.tsv", data]; Export["data.xls", data]; A summary of the results: data.csv -- has quotes around the strings data.txt -- has quotes around the strings and curly braces around each line data.dat -- no quotes around the strings, but the data is separated by tabs data.tsv -- has quotes around the strings data.xls -- no quotes around strings, data in appropriate columns, but this is an Excel file, which can't be read by the other program. One successful work-around:: save the files as data.xls, then from Excel export to a .csvIs there a way to Export the data so that it does not have quotes around the strings, but is separated by commas? (Follow-up question: how to include quotes in some of the exported text. The Excel workaround fails for this case.)
3 Replies
Sort By:
Posted 7 months ago
 Robert,Use the option "TextDelimiters"->"" in the command Export["data.csv", data, "TextDelimiters"->""]; There are many CSV file options (and for all the other Export file options as well). The documentation for them is here. As for your followup question, I'm not sure what you are asking.Regards,Neil
 Thanks Neil,That does address the first question very nicely!As for the follow-up question, in the example below, the output has two set of double quotes like this: text with""quoted text"" . The goal would be to have only one set of double quotes, like this: text with "quoted text" row0 = {"h1", "h2", "h3", "h4", "h5", "h6"}; row1 = {"", "", "a1", 1.01, "", ""}; row2 = {"", "", "b1", 2.02, "", "text with \"quoted text\" "}; row3 = {"", "", "c1", 3.03, "", ""}; data = {row0, row1, row2, row3}; Export["data.csv", data, "TextDelimiters" -> ""]; Output is the following h1,h2,h3,h4,h5,h6 ,,a1,1.01,, ,,b1,2.02,,text with ""quoted text"" ,,c1,3.03,, , just need to change the "" to "
 Set the option "TextDelimiters": Export["data.csv",{{"a\nb", "c", "d"}}, "CSV", "TextDelimiters" -> ""]