解决方案 »

  1.   

    编码问题..输出流的编码类型改成UTF-8
      

  2.   


    方法一:如果把txt转换成UTF-8格式时读取就会正常。方法二:Encoding.Default)的说明是“获取系统的当前 ANSI 代码页的编码”
    解决办法就是如下定义StreamReader的对象
    string path = "D:\Tools\ShootSearch_Segment_1_0_bate 070312\ShootSearch_Segment_1_0_bate 070312\test2.txt";
    StreamReader sr = new StreamReader(path,Encoding.Default)
      

  3.   

    楼主对TXT文件不太了解,读取文本文件是需要了解其编码规则的,乱码是错用的结果.
    而在windows系统中,常用的编码规则有两种:  gb2312, utf-8,不常用的是 unicode
      

  4.   

    代码写的真混乱
    已经读到LIST里了,又拆成4个LIST,然后又重新拼接?这是干什么
      

  5.   

    新人的代码 大部分都这样吧  慢慢来  多写写 多看看 多学学  就会提高了你目前的问题点是
    StreamReader
    StreamWriter
    的使用 不够准确 他们都是有多重重载的构造的类
    构造他们的时候(也就是new的时候) 不仅要指定文件位置
    还要指定文件使用的编码格式 如果不制定 则使用系统默认
    很显然 你要读取的文件不是系统默认的编码格式  至少和你的机器的默认编码格式不一致
    所以 你要显示指定编码格式
    具体文件使用的是什么编码格式  可以用记事本打开文件 选择另存为
    在弹出的另存为对话框中 下边有显示文件目前使用的编码格式
    你对号入座就可以了
      

  6.   

    如果你的程序没问题,那就是txt文件的问题了,你可以用editplus将txt文件转成utf-8,(你的程序也要相应的改成utf-8)
      

  7.   

    把你的Output.txt记事本打开选择“文件”---“另存为”在弹出框的下方选择“UTF-8”保存,将以前的覆盖