excel可以支持很多格式(dbf,txt...)。
如果有可能,应该没有一个人想用Excel dll,打开Application的开发方式。
逗号,空格,Tab键分隔的文本,基本上都可以用excel打开。
但我几次用StreamWriter(C#2.0,VS2005)写文件,用特殊符号分隔,保存为xls,只能用notepad打开。excel出现中文乱码的情况。
进行了很多分析,发现用记事本打开时,下面的编码不同,一个是Ascii,一个是utf-8,怀疑是这里有问题。
c#默认(没有添加构造函数的参数)时,编码是utf-8。但别的文件是ascii格式。
于是在StreamWriter构造函数中加入Encoding.Ascii,用记事本和excel打开,中文都成??了。
再试了一下Encoding.Default,竟然好了。
说了一大坨。
但还不清楚具体的底层原因:default,应该也是ascii吧。直接设置不行么?