是的,我研究过这个问题这里,这里,并且在堆栈溢出我知道这看起来像是一个重复的问题。因此,我将问题更具体化:“在 Excel 2010 中查看逗号分隔的双引号字段 csv 文件中时,如何保留前导零?”
我的客户的要求:
- 必须是 CSV 文件
- 必须能够双击文件才能在 Excel 中查看
- 必须保留前导零,尤其是在邮政编码字段。
- 必须用双引号括住字段以在名称字段中保留逗号,例如 Donald Duck, Jr.
我的尝试。
- 如果我没有对字段进行双引号引用,那么"=06953"效果很好,但是小唐老鸭 分成两个独立的列,这是不可接受的。
- 如果在双引号中引用我的字段时,我尝试“=”06953“”作为这表明,然后我得到="06953"在我的牢房里。
答案1
这是一个适用于 Excel 2010 的解决方案
- 双引号分隔没有前导零的字段。这将允许您在包含逗号的字段上使用双引号。
- 对于具有前导零的字段,使用 =" 作为起始字段分隔符,使用 " 作为结束字段分隔符。这将保留该字段的前导零。
当使用双引号作为字段分隔符时,无需用前导零对字段进行双引号引用。
答案2
您错过了有关双引号的要点,要在字段中包含双引号,您应该将其加倍:
"=""634576345" => ="634576345
为了保留前导零,您应该将数字像字符串一样呈现给 Excel,这样它们就根本不应该转换为数字。我现在没有在任何地方安装 Excel,但我想到以下可能的解决方案:
- 使用逗号代替点(或者,如果您的语言环境使用逗号作为小数点分隔符,则使用点代替逗号);
- 添加前导空格符号;
- 添加前导引号(')符号(据我所知,Excel 这样做是为了区分普通字符串和其他类型的类似字符串)。