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

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

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

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

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

我该如何避免这种情况?

答案1

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

如果使用双引号括住字段,则字段内部的双引号前面必须加上另一个双引号进行转义。

这和你的情况有什么关系?

  • 这意味着"Text" 必须保存"""Text""",外层引号界定字段,另外两个引号用于转义您在文本字段中使用的实际引号。否则,"Text"将被解析为 ,Text重新打开文件时您将丢失引号。

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

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

答案2

我也遇到过这个问题。然后,我注意到我忽略了保存类型:选项 ”格式化文本(空格分隔)“。 你也必须指定 。TXT扩展名,否则将默认使用 .prn 扩展名。例如,filename.txt 而不仅仅是 filename。尝试一下有用

答案3

即使字符串中没有引号,保存为 Unicode 似乎也会添加引号。以下是我解决这个问题的方法:

  1. 查找文件中不存在的字符串(我使用了xxx)。
  2. 导出之前,查找并替换所有双"引号xxx
  3. 将文件导出为 txt 或 csv。
  4. 打开 txt 文件并查找并替换所有引号
  5. 查找并替换所有xxx带引号的内容

答案4

只需在 excel 中将文件轻松保存为 space delimited.prn,然后将其重命名为 .txt。我用它来处理 18000 行的危机。;)

相关内容