Microsoft.VisualBasic.FileIO.TextFieldParser将±Ascii 241更改为?Ascii 63

asp*_*jim 7 .net vb.net ascii

我正在使用Microsoft.VisualBasic.Fileio.TextFieldParser来解析使用Excel 2003创建的CSV文件.解析器工作得很好,除了它将扩展的ascii值转换为问号!所以如果文件内容是:

±3
TextFieldParser正在返回
?3

我已经尝试了System.Text.Encoding包中的所有编码而没有运气.我以为我使用UTF7,但它正在删除其他字符,例如用空格替换+符号.

任何帮助将不胜感激.

shf*_*301 17

Microsoft.VisualBasic.Fileio.TextFieldParser默认为UTF8编码,但文本文件是系统的当前ANSI编码.使用其中一个采用以下编码的构造函数:TextFieldParser(string path,Encoding defaultEncoding).

您可以为您的编码传入System.Text.Encoding.Default,或者在代码页中构建一个新的编码对象.英文Windows上的默认值为1252.