如何将包含逗号的值写入 csv 文件?
Posted
技术标签:
【中文标题】如何将包含逗号的值写入 csv 文件?【英文标题】:How to write a value that contains a comma to a csv file? 【发布时间】:2014-03-03 10:25:12 【问题描述】:我有一个 javascript 程序可以将值写入 csv 文件。 我有一个包含逗号的值。 这该怎么做? 我是 javascript 的新手。 你能帮帮我吗?
我试过双引号
content += record.number +","+ record.category +","+ record.status +","+ record.approval_status +","+ record.requested_by +","+ record.assigned_to +","+record.assign_dept +","+ record.coordinator +","+ record.coord_phone +","+ record.planned_start +","+ record.planned_end +","+record.reason +","+ record.risk_assessment +","+ record.logical_name +","+ "record.assets" +","+ record.request_date +","+ record.subcategory +","+ record.priority_code +","+ record.impact +","+ record.sched_outage_start +","+ record.sched_outage_end + "\n";
record.assets 是包含逗号的字段。
谢谢, 奇特拉
【问题讨论】:
只需引用分隔 CSV 输出中的列。 试试这个***.com/questions/17836273/… 【参考方案1】:用引号将它们关闭并转义双引号?
http://en.wikipedia.org/wiki/Comma-separated_values
1999,Chevy,"Venture""加长版""",4900.00
在你的情况下:
"," + "record.assets" + ","
应该是
"," + '"' + record.assets.replace(/"/g,'""') + '"' + ","
【讨论】:
我试过这个......但它仍然与“一起写在单独的字段中 你在读什么?你告诉程序你有引号分隔的数据吗? 实际上有产品,其中提到的javascript程序充当触发器,当系统中进行更新时,它会写入csv文件。 该字段的值将类似于 --> [C++ object Datum] - "CAR11BANBAN021129", "CAR11BANMYS021149"【参考方案2】:您可以将文本放在引号之间。 您不必使用逗号,您可以使用“;”也是(荷兰语/德语格式,但效果很好) --> http://en.wikipedia.org/wiki/Comma-separated_values 1997;福特;E350;2,34
【讨论】:
我无法控制该字段,该字段中有一个逗号 您可以使用 ascii 字符并在之后进行 str 替换。即:1997,Ford,E350,"Super% Luxury truck" 并制作一个 str_replace(yourString,"%",",") 它与所有其他字符一起使用(如果您需要在数据中传递 %) 感谢 Azrael_404。有效。我用分号替换逗号并插入到 csv以上是关于如何将包含逗号的值写入 csv 文件?的主要内容,如果未能解决你的问题,请参考以下文章