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