C#文件分割的方法
本文实例讲述了C#文件分割的方法。分享给大家供大家参考。具体如下:
1.小文件分割(适用于小于等于64M的文件):
usingSystem;
usingSystem.IO;
stringfiletosplit=@"C:\temp\data.bin";
stringtargetpath=@"D:\store";
FileStreamfsr=newFileStream(filetosplit,FileMode.Open,FileAccess.Read);
longFileLength=fsr.Length;
byte[]btArr=newbyte[FileLength];
fsr.Read(btArr,0,(int)FileLength);
fsr.Close();
intsplitcount=3;
longPartLength=FileLength/splitcount+FileLength%splitcount;
intnCount=(int)Math.Ceiling((double)FileLength/PartLength);
stringstrFileName=Path.GetFileName(filetosplit);
longbyteCount=0;
for(inti=1;i<=nCount;i++,byteCount=(i<nCount?byteCount+PartLength:FileLength-PartLength))
{
FileStreamfsw=newFileStream(targetpath+Path.DirectorySeparatorChar+strFileName+i,FileMode.Create,FileAccess.Write);
fsw.Write(btArr,(int)byteCount,(int)(i<nCount?PartLength:FileLength-byteCount));
fsw.Flush();
fsw.Close();
}
2.大文件分割(适用于大于64M的文件)
usingSystem;
usingSystem.IO
stringfiletosplit=@"C:\temp\data.bin";
stringtargetpath=@"D:\store";
FileStreamfsr=newFileStream(filetosplit,FileMode.Open,FileAccess.Read);
longFileLength=fsr.Length;
byte[]btArr=newbyte[FileLength];
fsr.Read(btArr,0,(int)FileLength);
fsr.Close();
intsplitcount=3;
longPartLength=FileLength/splitcount+FileLength%splitcount;
intnCount=(int)Math.Ceiling((double)FileLength/PartLength);
stringstrFileName=Path.GetFileName(filetosplit);
longbyteCount=0;
for(inti=1;i<=nCount;i++,byteCount=(i<nCount?byteCount+PartLength:FileLength-PartLength))
{
FileStreamfsw=newFileStream(targetpath+Path.DirectorySeparatorChar+strFileName+i,FileMode.Create,FileAccess.Write);
longbc=byteCount;
longPartCount=i<nCount?PartLength:FileLength-bc;
intPartBufferCount=(int)(PartCount<int.MaxValue/32?PartCount:int.MaxValue/32);
intnc=(int)Math.Ceiling((double)PartCount/PartBufferCount);
for(intj=1;j<=nc;j++,bc=(j<nCount?bc+PartBufferCount:PartCount-PartBufferCount))
fsw.Write(btArr,(int)bc,(int)(j<nc?PartBufferCount:PartCount-bc));
fsw.Flush();
fsw.Close();
}
fsr.Close();
希望本文所述对大家的C#程序设计有所帮助。
热门推荐
10 八一幼儿祝福语大全简短
11 公司乔迁食堂祝福语简短
12 婚礼结束聚餐祝福语简短
13 儿媳买车妈妈祝福语简短
14 毕业送礼老师祝福语简短
15 同事辞职正常祝福语简短
16 恭贺新婚文案祝福语简短
17 金店立秋祝福语简短英文
18 婆婆高寿祝福语大全简短