将 Excel 文件另存为 Unicode 时如何避免双引号?

kar*_*hik 11 csv microsoft-excel-2003 microsoft-excel

我有一个包含 Unicode 内容的 Excel 文件,其中一些单元格包含双引号内的文本,例如"text".

当我将 Excel 文件保存为 Unicode 格式的文本文件时,包含双引号的文本将保存为三个双引号,例如"""text""".

有些地方我什至有包含逗号 (,) 的文本。例如,在Unicode 文件中text,转换成"text,"。它在文本中添加双引号,我猜它包含特殊字符。

我怎样才能避免这种情况?

slh*_*hck 9

这是标准行为(类似于 CSV 文件的保存方式)。请参阅RFC 4180 – 逗号分隔值 (CSV) 文件的通用格式和 MIME 类型

如果使用双引号将字段括起来,那么出现在字段内的双引号必须通过在它前面加上另一个双引号来转义。

这如何适用于您的案例?

  • 这意味着"Text" 必须另存"""Text""",分隔字段的外部引号,另外两个引号用于转义您用于文本字段的实际引号。否则,"Text"只会被解析为,Text并且在重新打开文件时会丢失引号。

  • Excel 也选择引用Text,,因为逗号在逗号分隔的文件中用作分隔符,而不将其括在引号中将意味着text,在您重新打开文件时将其解析为两个字段。

如果您不希望它们出现在您的输出中,请考虑在文本编辑器中打开生成的文件并通过简单的搜索和替换删除所有引号。

  • 您的意思是除了在文本编辑器中替换它们之外,没有其他方法可以解决该问题。 (2认同)