Son*_*oul 27 c# excel file-io export-to-excel
我使用控制台应用程序写出一个逗号分隔文件,而不是使用Process打开文件.将查询结果转储到excel是一种快速而又脏的方法.
有一段时间这很好用,但最近我开始得到" 你试图打开的文件'blah.csv',格式与文件扩展名不同 ".
而且点击"是"后
Excel检测到blah.csv是一个SYLK文件,但无法加载它.文件有错误或不是SYLK文件格式.单击"确定"以尝试以其他格式打开文件.
按OK打开它,并正确显示.
我在网络世界中看到了一些添加内容处置标题的解决方案,但由于我使用进程打开它,我无法应用该修复.
我的代码打开文件:
ProcessStartInfo info = new ProcessStartInfo();
info.FileName = filePath;
info.UseShellExecute = true;
Process.Start(info);
Run Code Online (Sandbox Code Playgroud)
如果我在Notepad ++中打开文件并显示所有字符,它只显示为具有CR LF行结尾的常规CSV.
经过一番调查,看起来标题行正在触发错误.如果我只是在标题之前写一个空行,那么错误就会消失.标题看起来像这样:
heading1,heading2,heading3 CRLF
Joh*_*kup 57
看看这里:http://support.microsoft.com/kb/323626
它似乎有ID作为标题行上的前两个字符是问题 - 在我看来Excel中相当奇怪的行为.
| 归档时间: |
|
| 查看次数: |
8261 次 |
| 最近记录: |