none
C#读取文件的问题 RRS feed

  • 问题

  • txt文件有以下内容,不管用什么编码格式去读都是乱码。

    查看文本编码为ANSI

    文本内容如下:

    0x52,0x00,0x00,0x00,0x00,0x00,0x00		"[Menu]			\n\
    RENAULT_AVANTIME=0X03			\n\
    RENAULT_CAPTUR_GANG_QM3_GANG_KABIN=0X4B			\n\"

    private void btnRead_Click(object sender, RoutedEventArgs e)
    {
        List<string> multiLineText = new List<string>();
    
        FileStream fstream = new FileStream(@"test.txt", FileMode.Open, FileAccess.Read);
    
        //int fsize = (int)fstream.Length;
        //byte[] fbuf = new byte[fsize];
        //int iret = fstream.Read(fbuf, 0 , fsize);
        //string ss = Encoding.ASCII.GetString(fbuf);
    
        using (StreamReader sreader = new StreamReader(fstream, Encoding.ASCII))
        {
            string str;
            while ((str = sreader.ReadLine()) != null)
            {
                Console.WriteLine(str);
            }
        }
    
        fstream.Close();
    }

    1. 除了乱码问题,行数也不对。

    2. ASCII,Default, UTF-8等等都试过。

    3.如果把该txt内容删了自己输入新的没问题,可以正常读出。



    • 已编辑 oneonce 2017年9月2日 2:29
    2017年9月2日 2:26

答案

全部回复