欢迎来到天天文库
浏览记录
ID:59357690
大小:49.50 KB
页数:19页
时间:2020-09-04
《如何把多个文件写入到一个文件中去并能分解.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、如何把多个文件写入到一个文件中去并能分解.txt如果你同时爱几个人,说明你年轻;如果你只爱一个人,那么,你已经老了;如果你谁也不爱,你已获得重生。积极的人一定有一个坚持的习惯。对于一个文件的读写,其实很简单,就是用FileStream进行Read或者Write就行了。但是如何把多个文件写入到同一个文件,之后要能把这个文件进行还原成多个文件。那么光靠FileStream的Read和Write方法是不够的,首先你需要自行建立文件索引,来标明每个文件在当前文件的位置。那么最近作了一个简单的DEMO,其中类的部分代码如下://------------------------
2、-------ComposeFiles----------------------------------//--------------------------------------------------------------------------------//---File:clsComposeFiles.cs//---Description:Thisfileistoshowhow-tocomposemulti-filesintoonefile//anddecomposeonefiletomulti-files.//---Author:Knight//
3、---Date:May.16,2006//--------------------------------------------------------------------------------//------------------------------{ComposeFiles}---------------------------------namespaceComposeFiles{usingSystem;usingSystem.IO;usingSystem.Collections;usingSystem.Text;//////S
4、ummarydescriptionforclsComposeFiles.///publicclassclsComposeFiles{privateArrayListarrFiles=newArrayList();publicclsComposeFiles(){////TODO:Addconstructorlogichere//}//////Addafiletobecomposed//////publicvoidAddFile(stringsFile
5、Name){arrFiles.Add(sFileName);}//////Composefilestothespecificfile/////////publicboolComposeFiles(stringsFileName){if(arrFiles.Count==0)returnfalse;FileInfofi=newFileInfo(sFileName);//OpenfiletowriteFileStreamfsWriter
6、=null;try{if(!fi.Exists){fsWriter=newFileStream(sFileName,FileMode.CreateNew,FileAccess.ReadWrite,FileShare.None);}elsefsWriter=newFileStream(sFileName,FileMode.Truncate,FileAccess.ReadWrite,FileShare.None);}catch(Exceptionerr){System.Diagnostics.Debug.WriteLine(err.Message);returnfals
7、e;}byte[]bBuffer=null;//WritefilescountbBuffer=FileIndex.LongToBytes(arrFiles.Count);fsWriter.Write(bBuffer,0,8);constlongINDEX_START_POS=8L;//InitfilesindexFileIndexFI=newFileIndex();for(inti=0;i
此文档下载收益归作者所有