http://www.c-sharpcorner.com/1/FileMergerAndSplitter.asp拆分,合并 文件
解决方案 »
- 我在主窗体的 formclosing事件中询问用户是否退出,为什么这个询问会出现两次呢?
- 一个纠结我好多天c#锁的问题,哪位大神帮忙解决一下?
- 如何让一个窗体成为当前的活动窗体呢?
- throw(new System.ArgumentOutOfRangeException("cardNum", cardNum, "Value must
- C# 字符串比较问题
- 给HyperLink.NavigateUrl赋的值&在前台变成&怎么解决
- 比较初级的《增删改查代码》高手绕行
- 请问VS2003开发的dll,VS2005能用吗?
- 如何从SQL SERVER数据库中提取照片并显示出来??调试了一天了!!
- 有人用过vs.net里的测试工具Application Center Test吗?
- 请问怎样才能让我的程序同时只有运行一个?
- webservice可以不作为虚拟目录运行吗?
using System;
using System.IO;private const string FILE_NAME="d:\\tests\\HelloWorld.exe";
private const string FILE_NAME1="d:\\tests\\HelloWorld1.exe";
private const string PATH="d:\\tests\\patch";
分解程序
string PatchFileName;
byte[] patch;
int Length,PLength,StreamLength;
int i;
i=0;
PLength=1500;
patch=new byte[PLength];
if(!File.Exists(FILE_NAME))
return;
FileStream fs=new FileStream(FILE_NAME,FileMode.Open,FileAccess.Read);
Length=(int)fs.Length;
BinaryReader br=new BinaryReader(fs);
while(Length>0)
{
StreamLength=Math.Min(Length,PLength);
PatchFileName=PATH+i.ToString();
FileStream Pfs=new FileStream(PatchFileName,FileMode.CreateNew,FileAccess.Write);
BinaryWriter Pbw=new BinaryWriter(Pfs);
br.Read(patch,0,(int)StreamLength);
Pbw.Write(patch,0,StreamLength);
Pbw.Close();
Pfs.Close();
Length=Length-PLength;
i++;
}
br.Close();
fs.Close();
组合程序
分割
string PatchFileName;
byte[] patch;
int Length,PLength,i;
PLength=1500;
i=0;
patch=new byte[PLength];
FileStream fs=new FileStream(FILE_NAME1,FileMode.CreateNew,FileAccess.Write);
BinaryWriter bw=new BinaryWriter(fs);
PatchFileName=PATH+i.ToString();
while(File.Exists(PatchFileName))
{
FileStream Pfs=new FileStream(PatchFileName,FileMode.Open,FileAccess.Read);
BinaryReader Pbr=new BinaryReader(Pfs);
Pbr.Read(patch,0,(int)Pfs.Length);
bw.Write(patch,0,(int)Pfs.Length);
Pbr.Close();
Pfs.Close();
i++;
PatchFileName=PATH+i.ToString();
}
bw.Close();
fs.Close();
}