【问题标题】:How to generate .csv file for Excel without error messages?如何为 Excel 生成 .csv 文件而不会出现错误消息?
【发布时间】:2015-10-13 18:35:11
【问题描述】:

该文件是用 javascript 和 downloaded 通过 a 标签创建的。 但是 Excel 抱怨文件格式有问题。

  1. Excel 在什么文件格式下不会报错?
  2. 这可以用 javascript 生成吗?

一开始显然是Excel wants the BOM,但我不知道如何改变它。文件编码为Base64

第一个错误: “filename.csv”的文件格式和扩展名不匹配。该文件可能已损坏或不安全。除非你相信它的来源,否则不要打开它。你还是要打开它吗?

是之后的第二个错误: Excel 检测到“filename.csv”是一个 SYLK 文件,但无法加载它。文件有错误或者不是 SYLK 文件格式。单击“确定”尝试以其他格式打开文件。

【问题讨论】:

  • 您的输出文件是否以 'ID' 开头?如果是这样,则在文本编辑器中打开 csv 并进行更改。 support.microsoft.com/en-us/kb/215591 了解更多信息。
  • 谢谢,这应该只处理第二个错误,但它处理了两个错误!如果你把它作为答案,我会接受它。

标签: javascript excel csv file-format


【解决方案1】:

您的输出文件是否以 'ID' 开头?如果是这样,则在文本编辑器中打开 csv 并进行更改。 请参阅http://support.microsoft.com/en-us/kb/215591 了解更多信息

编辑:

该链接现在已失效 - 但是使用它所说的回路机器:

更多信息 SYLK 文件是以“ID”或 “ID_xxxx”,其中 xxxx 是文本字符串。 SYLK的第一条记录 文件是 ID_Number 记录。当 Excel 在 文本文件的开头,它将文件解释为 SYLK 文件。 Excel 尝试将文件从 SYLK 格式转换,但无法 to 因为“ID”后面没有有效的 SYLK 代码 人物。由于无法转换文件,Excel 会生成 错误。

https://support.microsoft.com/en-us/help/170245/prj-files-saved-as-csv-can-t-be-opened-in-microsoft-excel

这是另一个解释它的链接 - 不知道这个链接会持续多久,所以这里还有一个屏幕截图供将来参考:

【讨论】:

  • @mjwrazor - 谢谢,我添加了一个新链接
【解决方案2】:

为客户创建 CSV 文件时遇到了这个烦人的问题。如果您是编写 CSV 文件并在 Excel 中打开它们的人,请使用“Id”而不是“ID”。

【讨论】:

    猜你喜欢
    • 2019-05-21
    • 2016-11-13
    • 1970-01-01
    • 2018-03-28
    • 1970-01-01
    • 2016-08-14
    • 2015-07-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多