C#流读取器,分隔符。

C#流读取器,分隔符。,c#,streamreader,C#,Streamreader,我有一个巨大的txt文件,60MB。我需要读取每一行并生成一个基于分隔符拆分的文件。我在读取文件或生成文件时没有问题,我的复杂性来自分隔符,它看不到分隔符。如果有人能就如何阅读这个分隔符提出建议,我将不胜感激 分隔符= public void file1() { string betaFilePath = @"C:\dtable.txt"; StringBuilder sb = new StringBuilder(); using (FileStream fs = new

我有一个巨大的txt文件,60MB。我需要读取每一行并生成一个基于分隔符拆分的文件。我在读取文件或生成文件时没有问题,我的复杂性来自分隔符,它看不到分隔符。如果有人能就如何阅读这个分隔符提出建议,我将不胜感激

分隔符=

public void file1()
{
    string betaFilePath = @"C:\dtable.txt";
    StringBuilder sb = new StringBuilder();
    using (FileStream fs = new FileStream(betaFilePath, FileMode.Open))
    using (StreamReader rdr = new StreamReader(fs))
    {
        while (!rdr.EndOfStream)
        {
            string[] betaFileLine = rdr.ReadLine().Split('Ç');
            {
                sb.AppendLine(betaFileLine[0] + "ç" + betaFileLine[1] + betaFileLine[2] + "ç" + betaFileLine[3] + "ç" + betaFileLine[4] + "ç" + betaFileLine[5] + "ç" + betaFileLine[6] + "ç" + betaFileLine[7] + "ç" + betaFileLine[8] + "ç" + betaFileLine[9] + "ç" + betaFileLine[10] + "ç");
            }
        }
    }
    using (FileStream fs = new FileStream(@"C:\testarea\load1.txt", FileMode.Create))
    using (StreamWriter writer = new StreamWriter(fs))
    {
        writer.Write(sb.ToString());
    }
}
小更新:

string[] betaFileLine = rdr.ReadLine().Split('Ç'); 
它不能在charecter上分开。当我调试它时,发现它是一个不可读的字符

伙计们,谢谢你们的帮助,你们为我指明了正确的方向

更改:

using (StreamReader rdr = new StreamReader(fs))  
致:


已修复。

确保您的
StreamReader
使用与文本文件相同的文本编码。构造函数可以使用第二个参数来指示要使用的编码。

确保您的
StreamReader
使用与文本文件相同的文本编码。构造器可以使用第二个参数来指示要使用的编码。

看起来您是在切分,但添加了切分。不是简单的用小写替换大写分隔符,或者用小写替换大写分隔符。

看起来像是在切分,但在添加切分。不是像用小写替换大写分隔符那样简单的事情,或者反之亦然。

就是这样,它看到的行很好,它似乎不是分隔符。我试着将它改为使用(StreamReader rdr=new StreamReader((fs),Encoding.ASCII)),但这只会导致将圣诗作为一个?这就是问题,它看到的行很好,它似乎不是分隔符。我尝试将其更改为使用(StreamReader rdr=new StreamReader((fs),Encoding.ASCII)),但这只会导致将“”读取为?你说“它看不到分隔符”是什么意思?到底出了什么问题呢?string[]betaFileLine=rdr.ReadLine().Split('ch');它不能在charecter上分开。当我调试它时,发现它是一个不可读的字符。我认为你应该接受David M的答案。请为可能遇到类似问题的人标记一个答案。你说“它看不到分隔符”是什么意思?到底出了什么问题呢?string[]betaFileLine=rdr.ReadLine().Split('ch');它不能在charecter上分开。当我调试它时,发现它是一个不可读的字符。我认为你应该接受David M的答案。请为可能遇到类似问题的人标记一个答案。不要通过行分割。dtable.txt文件是否包含字符?不要通过行分割。dtable.txt文件是否包含字符?
using (StreamReader rdr = new StreamReader((fs),Encoding.Default))