C#读取记事本文件的代码,记事本内文字为“我是中国人”,有的可以读取有的不可以,求解释!!!!
stringfilepath=null;OpenFileDialogop=newOpenFileDialog();if(op.ShowDialog()==DialogRe...
string filepath=null ;
OpenFileDialog op = new OpenFileDialog();
if (op.ShowDialog() == DialogResult.OK)
{
filepath = op.FileName;
}
StreamReader sr = new StreamReader(filepath,Encoding.GetEncoding ("gb2312") );
while (sr.ReadLine() != null)
{
string text = sr.ReadLine();
richTextBox1.Text = text;
}
sr.Close();
分不多,忘高人指导,感激不尽
当读取E盘的另一个txt文件时却可以,搜了半天说是编码设置问题,但是还是读不出来 展开
OpenFileDialog op = new OpenFileDialog();
if (op.ShowDialog() == DialogResult.OK)
{
filepath = op.FileName;
}
StreamReader sr = new StreamReader(filepath,Encoding.GetEncoding ("gb2312") );
while (sr.ReadLine() != null)
{
string text = sr.ReadLine();
richTextBox1.Text = text;
}
sr.Close();
分不多,忘高人指导,感激不尽
当读取E盘的另一个txt文件时却可以,搜了半天说是编码设置问题,但是还是读不出来 展开
2个回答
展开全部
while (sr.ReadLine() != null) 这里读取一行判断是否为空
{
string text = sr.ReadLine(); 这里又读取一行把这个值赋值给richTextBox1,这行数据如果不是“我是中国人”这句话。那么必定是其他的值,或者是空值。
richTextBox1.Text = text; 上面的text值就会影响到richTextBox1的值
}
这里有问题。
可以改成
string text = sr.ReadLine().tostring(); 这里首先读取一行
while (text != "") 至于怎么判断第一行读取的是回车换行这个也是要考虑的问题,回车应为"\r”,换行为"\n"
{
string text = sr.ReadLine(); 这里是第二行、第三行……
如果不想要回车换行加if(text !="\r\n"){ richTextBox1.Text = text; }
richTextBox1.Text = text;
}
这样做就可以了
{
string text = sr.ReadLine(); 这里又读取一行把这个值赋值给richTextBox1,这行数据如果不是“我是中国人”这句话。那么必定是其他的值,或者是空值。
richTextBox1.Text = text; 上面的text值就会影响到richTextBox1的值
}
这里有问题。
可以改成
string text = sr.ReadLine().tostring(); 这里首先读取一行
while (text != "") 至于怎么判断第一行读取的是回车换行这个也是要考虑的问题,回车应为"\r”,换行为"\n"
{
string text = sr.ReadLine(); 这里是第二行、第三行……
如果不想要回车换行加if(text !="\r\n"){ richTextBox1.Text = text; }
richTextBox1.Text = text;
}
这样做就可以了
追问
嗯嗯,的确是这样的,richTextBox1.Text += text;就把所有的都读出来了,再问下如果是doc文档的话应该怎么来读取呢??
追答
额 doc文档比较麻烦了
要引用微软的dll文件 这个 你上网查一下 比较麻烦 一时说不清楚
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询