为什么使用 gb2312 编码方式创建的txt 文件,只有用 utf-8 编码才能正确出去呢??
(我半天都耗着问题上了,本以为使用 gb2312 编码方式写入,在使用 gb2312 读取是
天经地义的事儿,可是么会这样!!!!》????》?》?)
--------------
谁能给个解释,谢谢!

解决方案 »

  1.   


                if (openFileDialog1.ShowDialog() == DialogResult.OK)
                {
                    string fileName = openFileDialog1.FileName;
                    textBox1.Text = File.ReadAllText(fileName, Encoding.GetEncoding(0));
                }
      

  2.   

    StreamWriter   s   =   new   StreamWriter( "a.txt ",false,System.Text.Encoding.GetEncoding( "GB2312 "))
      

  3.   

    我题还是没有解决,但是为了解决这问题,我将编码方式放到了配置文件中了,并且使用下面的方法进行验证
    自己写了个编码测试程序,将.net 中的所有编码遍历了一遍,遍历的时候使用当前的编码进行读取,
    当所有编码遍历结束后,各个编码读取的内容也将呈现,这是我只要找到那个读取后不乱码的“编码字符”
    然后将这个读取不乱码的编码格式放到配置文件中。
    ----------------------
    问题背景:
    因为客户方面保密措施作的相当的恐怖,所以发布一次更新一次程序那是相当的费劲。
    现在是在和第三法系统做借口,接口通信是通过 txt 文件形式进行的,第三方系统是个CS 系统,而且是
    德国的软件,虽让进行了汉化但是我个人觉得,汉化后的编码可能还是有问题(本人对编码不太熟悉,可能
    是对自己技术的不肯定哦)
    简单描述一下软件工作模式吧:
    我们系统生成 txt 文件供 对方读取  (已通过测试)
    对方生成反馈 txt 文件公 我们读取  (未通过,待验证)
    我们读取后 要清空 txt 文件         (待验证)