+ -
当前位置:首页 → 问答吧 → 为什么SreamReader读出来的中文变数字串了?

为什么SreamReader读出来的中文变数字串了?

时间:2011-12-07

来源:互联网

事先也参考过百度的结果,尝试过将Encoding设置为“GB2312”或“Default”或“Unicode”。但是没有一个成功的……
TXT文件中的文本是“一个叫一个的大饼”
结果读出来的结果是:28510

实在搞不明白,跪求解释……

作者: sanyexian   发布时间: 2011-12-07

发代码上来看看

作者: zh6335901   发布时间: 2011-12-07

VB.NET code

 Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
        Dim File_Name As String = "D:\11122.txt"
        Dim objWriter As New System.IO.StreamWriter(File_Name, False)
        objWriter.Write(TextBox1.Text)
        objWriter.Close()
    End Sub

    Private Sub Button2_Click(sender As System.Object, e As System.EventArgs) Handles Button2.Click
        Dim File_Name As String = "D:\11122.txt"
        Dim objReader As StreamReader = New IO.StreamReader(File_Name, System.Text.Encoding.GetEncoding("Gb2312"))
        TextBox2.Text = objReader.Read()
        objReader.Close()
    End Sub


就是最简单的代码阿

作者: sanyexian   发布时间: 2011-12-08

发现自己写错了,不能用read,而应该用readline,但是这样读出来的,又全是乱码了……

作者: sanyexian   发布时间: 2011-12-08

utf-8?

作者: keenweiwei   发布时间: 2011-12-08

StreamWriter srWrite = new StreamWriter(fsTxtWrite, System.Text.Encoding.UTF8);

作者: keenweiwei   发布时间: 2011-12-08

写入和读取设置相同编码,同为UTF8

作者: sunzongbao2007   发布时间: 2011-12-08

gbk gb2312 都可以吧楼主。会出现乱码么?
你的文本编码方式是什么?

作者: zhuhuailei   发布时间: 2011-12-13