博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
c#文件分割与合并 part 2
阅读量:6441 次
发布时间:2019-06-23

本文共 2180 字,大约阅读时间需要 7 分钟。

这是合并的部分,我们要让在上一篇文章中被分割的文件再合并起来,建立一个新的项目,相对于上一个项目,只是少了一个combox控件,因为我们要合并文件,所以不需要选择文件大小,设计图如下:

同样,引用system.IO,然后,给浏览按钮添加如下代码:

 

浏览 private void button1_Click(object sender, EventArgs e)         {
openFileDialog1.Title = "请选择要合并的第一个文件"; System.Windows.Forms.DialogResult drTemp = openFileDialog1.ShowDialog(); if (drTemp == DialogResult.OK && openFileDialog1.FileName != "") {
textBox1.Text = openFileDialog1.FileName; } string[] path = openFileDialog1.FileName.Split(@"\".ToCharArray()); string sTemp = ""; int i = 0; for (i = 0; i < path.Length - 1; i++) {
sTemp = sTemp + path[i] + @"\"; } button1.Enabled = true; sDirectoryName = sTemp; //获得文件所在目录 }

 

再给button2添加如下代码:

 

合并 private void button2_Click(object sender, EventArgs e)         {
string[] arrFileNames = Directory.GetFiles(sDirectoryName); //获取存放分割后小文件所在目录所在的所有小文件 int iSumFile = arrFileNames.Length; progressBar1.Maximum = iSumFile; FileStream AddStream = new FileStream(textBox2.Text, FileMode.OpenOrCreate); //以合并后的文件名称和打开方式来创建、初始化FileStream文件流 BinaryWriter AddWriter = new BinaryWriter(AddStream); //以FileStream文件流来初始化BinaryWriter书写器,此用以合并分割的文件 /*循环合并小文件,并生成合并文件 */ for (int i = 0; i < iSumFile; i++) {
FileStream TempStream = new FileStream(arrFileNames[i], FileMode.Open); //以小文件所对应的文件名称和打开模式来初始化FileStream文件流,起读取分割作用 BinaryReader TempReader = new BinaryReader(TempStream); //用FileStream文件流来初始化BinaryReader文件阅读器,也起读取分割文件作用 AddWriter.Write(TempReader.ReadBytes((int)TempStream.Length)); //读取分割文件中的数据,并生成合并后文件 TempReader.Close(); //关闭BinaryReader文件阅读器 TempStream.Close(); //关闭FileStream文件流 progressBar1.Value = i + 1; //显示合并进程 } AddWriter.Close(); //关闭BinaryWriter文件书写器 AddStream.Close(); //关闭FileStream文件流 MessageBox.Show("成功合并!"); progressBar1.Value = 0; }

 

编译后运行,我们找到刚才的文件,选择第一个0001.rar,然后进行合并,即可。

然后,可以在输出文件的目录下,看到my.rar了。

转载地址:http://lhdwo.baihongyu.com/

你可能感兴趣的文章
hdu1166 敌兵布阵 树状数组/线段树
查看>>
读书笔记之:操作系统概念(第6版)-第一部分 概述(导论,计算机系统结构,操作系统结构)...
查看>>
JavaScript阻止修改对象的三种方式
查看>>
python+ffmpeg切割视频
查看>>
DUMP
查看>>
博客园如何插入编辑代码
查看>>
使用物化视图来同步数据on prebuilt table
查看>>
poj 3421 X-factor Chains 组合数学
查看>>
java 网站用户在线和客服聊天
查看>>
正则表达式语法
查看>>
《IT项目管理》读书笔记(1) —— 概述
查看>>
MFC处理中文路径
查看>>
mount什么意思
查看>>
c++-链表的回文结构
查看>>
XML模块
查看>>
编写自动化测试用例的原则
查看>>
poj2955(区间dp)
查看>>
突然多了个机会…纠结了一个星期。
查看>>
SAP QUERY
查看>>
MIGO收货 BAPI :BAPI_GOODSMVT_CREATE BADI增强
查看>>