请看附件里面是1个100多K的起点小说,TXT文档,我想弄个txt阅读器,放了个richTextBox,最快的办法就是
richTextBox1.LoadFile(fileName, RichTextBoxStreamType.PlainText);
但是此法读取小说发现没有换行,无法阅读.
结果就想用流的方式.
FileStream fs = new FileStream(fileName, FileMode.Open, FileAccess.Read);
if (fs.CanRead)
{
//读取时加入编码信息,否则读取汉字会乱码
StreamReader sr = new StreamReader(fs, Encoding.Default);
//毛病是没有换行
//richTextBox1.Text = sr.ReadToEnd();
string strline = sr.ReadLine();
while (strline != null)
{
strline = sr.ReadLine();
richTextBox1.Text += strline + "\n";
}
sr.Close();发现速度奇慢无比.结果又用上异步读取,发现还是会造成程序无响应,附上程序源码请各位大大指点指点.如何快速读取大的txt和解决无响应问题?
richTextBox1.LoadFile(fileName, RichTextBoxStreamType.PlainText);
但是此法读取小说发现没有换行,无法阅读.
结果就想用流的方式.
FileStream fs = new FileStream(fileName, FileMode.Open, FileAccess.Read);
if (fs.CanRead)
{
//读取时加入编码信息,否则读取汉字会乱码
StreamReader sr = new StreamReader(fs, Encoding.Default);
//毛病是没有换行
//richTextBox1.Text = sr.ReadToEnd();
string strline = sr.ReadLine();
while (strline != null)
{
strline = sr.ReadLine();
richTextBox1.Text += strline + "\n";
}
sr.Close();发现速度奇慢无比.结果又用上异步读取,发现还是会造成程序无响应,附上程序源码请各位大大指点指点.如何快速读取大的txt和解决无响应问题?
解决方案 »
- 有个SQL问题想请教一下?
- 关于连连看 第一步产生随机图片
- 如何将richtextbox中的内容转换为字节数组?急急!!
- 关于图片 白色部分透明 大家来看下
- 请问在form.BackgroundImage如何让它将图片自动按照窗体的大小,将图片放大缩小
- 请问 关于 IDataCommand 的 问题
- 如何在SQL Server2000中创建数组变量?
- IP绑定MAC地址的原理是怎么样的?
- 新建一项目后的主窗口是Form1.cs,然后建一主菜单“数据处理”,请问,如何点击数据处理菜单就运行form2.cs表单?谢谢!(附代码)
- 请看下面的C#控件是beta2的还是正式版的?
- datagrid;winfrom;
- winform 如何让 form2更改form1中listbox选中的值
你先用StringBuilderBuild一个string
然后一起赋给richTextBox1
if (fs.CanRead)
{
//读取时加入编码信息,否则读取汉字会乱码
StreamReader sr = new StreamReader(fs, Encoding.Default);
//毛病是没有换行
//richTextBox1.Text = sr.ReadToEnd();
string strline = sr.ReadLine();
StringBuilder sb = new StringBuilder();
sb.Append(strline);
while (strline != null)
{
strline = sr.ReadLine();
sb.Append("\n");
sb.Append(strline);
}
sr.Close();
richTextBox1.Text =sb.ToString(0,sb.Length);
使用StringBuilder 我原来也弄过,只不过是在循环里面 sb.Append(strline);
不知道最后那句richTextBox1.Text =sb.ToString(0,sb.Length);
多谢多谢指教了