我收到了将数据保存到CSV文件并将其发送给客户的要求。 客户使用Excel和记事本查看此文件。 数据是这样的:在Excel和记事本中打开CSV格式的文本格式编号
975567EB,973456CE,971343C8
我的数据必须通过 “E3” 一些数量的最终像:
98765E3
所以当在Excel中打开,它将更改为:
9.8765E + 7
我写了一个程序来改变这种格式在C#中添加= “98765E3” 这个文本
while(!sr.EndOfStream) {
var line = sr.ReadLine();
var values = line.Split(',');
values[0] = "=" + "\"" + values[0] + "\""; //Change number format to string
listA.Add(new string[] {values[0], values[1], values[2], values[3]});
}
但随着客户,谁使用记事本打开CSV文件,它会显示这样的:
= “98765E3”
如何将CSV文本保存为CSV文件以在Excel和记事本中以相同的结果打开?非常感谢任何建议!
这在我看来是不可能的。在使用Excel“打开”CSV时,Excel将猜测每个单一数据条目的数据类型。因此'98765E3'被猜测为数字,'=“98765E3”'被猜测为导致字符串的公式。这是因为在Excel中,默认情况下没有整个列的数据类型首选项。只有在使用导入向导导入CSV时,才可以选择整列的数据类型。所以人们可以说'98765E3'是文字而不是数字。 –
您可以提供两种下载选项。一个用于记事本用户的CSV,一个用于Excel用户的真正Excel文件。 –