【问题标题】:How to write a value that contains a comma to a csv file?如何将包含逗号的值写入 csv 文件?
【发布时间】: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 是包含逗号的字段。

谢谢, 奇特拉

【问题讨论】:

标签: javascript csv comma


【解决方案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
猜你喜欢
  • 2011-12-26
  • 1970-01-01
  • 2021-02-08
  • 2012-03-22
  • 1970-01-01
  • 2018-03-20
  • 1970-01-01
  • 2016-12-14
  • 2021-12-28
相关资源
最近更新 更多