博客园,给力点啊!!!!!!!!!!!!!!
最好分段读取,这样速度快体验好,用一个配置文件记录读取的信息,分段代码可以参考:
string filePath = @"D:\test.txt";
int bufferSize = 1024; //每次读取的字节数
byte[] buffer = new byte[bufferSize];
FileStream stream = null;
try
{
stream = new FileStream(filePath, FileMode.Open);
long fileLength = stream.Length;//文件流的长度
int readCount = (int)Math.Ceiling((double)(fileLength / bufferSize)); //需要对文件读取的次数
int tempCount = 0;//当前已经读取的次数
do
{
stream.Read(buffer, tempCount * bufferSize, bufferSize); //分readCount次读取这个文件流,每次从上次读取的结束位置开始读取bufferSize个字节
//这里加入接收和处理数据的逻辑-
string str = Encoding.Default.GetString(buffer);
Console.WriteLine(str);
tempCount++;
}
while (tempCount < readCount);
}
catch
{
}
finally
{
if (stream != null)
stream.Dispose();
}
在第二次执行do的时候就报错了,而且我用到了DocumentViewer控件,
这里也要读取文件,所以同时访问会有冲突,有没有一个好的解决办法,网上也没查到相关资料 - -!
还有个问题,大哥,
@yusolo: 我没做过WPF开发,对这个不怎么懂,看起来应该是一个树,应该有这样的控件吧
放到内存中,和img 在WPF使用时一样的