一段copy文件的方法 但是丢数据 大家帮我看看

wwtzy 2005-07-05 03:25:16

FileInfo fileInfo = new FileInfo("c:\123.txt");
System.IO.FileStream fStreamR = fileInfo.OpenRead();
long fLen = fStreamR.Length ;
byte[] buffer = new Byte[2048] ;
System.IO.FileStream fStreamW = System.IO.File.Create("d:\123.txt");
int i;
progressBar1.Maximum = (int)(fLen/2048)*10; // need to check to see if existing overflow
while(true)
{
if((i = (int)(fLen - fStreamR.Position -1)) <= 2048)
{
fStreamR.Read(buffer,0,i-1);
fStreamW.Write(buffer,0,i-1);
break;
}
fStreamR.Read(buffer,0 ,2047);
fStreamW.Write(buffer,0,2047);
this.progressBar1.PerformStep(); //在这里.....

}
fStreamW.Flush();
fStreamR.Close();
fStreamW.Close();


//这段代码是我考别人的,拿过来自己用了一下 发现问题如下
//当copy如xml文件的时候 最后的 ">"符号总是丢失,还有就是".""<"等符号 数字也偶尔有丢失的时候
//是怎么回事?
...全文
106 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
kdg2000 2005-07-05
  • 打赏
  • 举报
回复
if((i = (int)(fLen - fStreamR.Position -1)) <= 2048)
-------------------------------------------------------
-1 换成 +1
wwtzy 2005-07-05
  • 打赏
  • 举报
回复
好像总是丢两个字节 如12345 -〉123
我们 -〉我
wwtzy 2005-07-05
  • 打赏
  • 举报
回复
怎么没人来?都睡着了? 北京真热-_-;
wwtzy 2005-07-05
  • 打赏
  • 举报
回复
自己顶 ..

110,526

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧