停止Exceldate分析

我写了一个脚本来将产品数据从cscart数据库导出到CSV文件。 它完美的工作,但是当在MS Excel中打开,它parsing的东西,如“12-14”作为date,显示“12月14日”。

我阅读http://excel.tips.net/Pages/T003228_Stopping_Date_Parsing_when_Opening_a_CSV_File.html,但客户端不会愿意这样做 – 是否有任何其他方式在CSV文件本身强制Excel将其识别为一个string。

我已经尝试用双引号将所有字段包起来,我试着在连字符周围放置空格 – 没有运气。 有任何想法吗?

您是否考虑以Excel 2003 XML格式导出数据? 除非您使用内置的CSV编写器,否则创buildXML格式不应太难。 最重要的是:您可以准确指定数据types。

一个很好的例子可以在Wikipedia中find。

(不要将此格式与带有.xlsx扩展名的最新XML / ZIP Excel格式混淆。)

我试了一下,把一个单引号,它的工作。 我使用的样本数据是

ID,名称,string,date

1,ABCD,“'12-1" ,美国广播公司

21,ZYS“,”12-1" ,ABC

13,PQRST“,”12-21" ,ABC

但是在string现在显示,当在XLS打开为'12 -1,不是很好,但一个简单的解决scheme。