我在VB.net代码中读取文本文件。我想读这行包含一些特殊字符,其dec值为176,十六进制值为B1,符号为+和 - 在底部。以下是显示该值的网址:
http://www.ascii.cl/htmlcodes.htm
如何在VB.net中读取值为176
的特殊字符这条线是这样的
"2314 Test1 Test2 Test3 12.3 special character that has a Dec value of 176 1234"
每个单词由制表符分隔。
这是我到目前为止所做的:
reader = File.OpenText(fileInfo.FullName)
While reader.Peek <> -1
line = reader.ReadLine()
End While
reader.Close()
reader.Dispose()
我也试过这样做:
System.Text.Encoding.GetEncoding(line)
任何帮助将不胜感激。
答案 0 :(得分:1)
使用StreamReader
类的Bootbox 5.0 ship list(来自System.IO
命名空间):
Using reader As StreamReader = New StreamReader("C:\Users\trashr0x\Desktop\test.txt", System.Text.Encoding.Unicode)
Dim line As String = reader.ReadLine()
End Using
您还可以使用this constructor方法(同样来自System.IO
):
Dim testString as String = File.ReadAllText("C:\Users\trashr0x\Desktop\test.txt", System.Text.Encoding.Unicode)
我已将编码设置为Encoding.Unicode
。如果您不知道文件的编码,可以尝试其他值:
Encoding.ASCII
(正如@Jon Skeet在你的问题的评论中指出的,这个符号不是ASCII)Encoding.UTF32
Encoding.UTF8
Encoding.UTF7
Encoding.BigEndianUnicode
Encoding.Default
(默认编码为ANSI)作为一个有趣的读物:Joel Spolsky的File.ReadAllText
。