用C#设计一个命令行方式的文件分割器
点击次数:18 次 发布日期:2008-11-06 08:08:07 作者:源代码网
|
源代码网推荐 源代码网推荐 本文用微软的visual studio .net开发环境的C#语言也来设计一个文件分割器,并且以DOS命令行方式运行,就象使用copy命令一样简单。从中也可以了解文件分割的原理以及.net框架对文件的读写操作方式。 源代码网推荐 源代码网推荐 新建一个visual c#项目,选择“控制台应用程序”,项目名称设置为filesplitcon,系统自动产生了class1.cs文件,将以下的代码加入到class1.cs的相应区域中: 源代码网推荐 源代码网推荐using System; 源代码网推荐 源代码网推荐using System.Data; 源代码网推荐 源代码网推荐using System.IO; 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐namespace filesplitcon 源代码网推荐 源代码网推荐{ 源代码网推荐 源代码网推荐 /// <summary> 源代码网推荐 源代码网推荐 /// Class1 的摘要说明。 源代码网推荐 源代码网推荐 /// </summary> 源代码网推荐 源代码网推荐 class Class1 源代码网推荐 源代码网推荐 { 源代码网推荐 源代码网推荐 /// <summary> 源代码网推荐 源代码网推荐 /// 应用程序的主入口点。 源代码网推荐 源代码网推荐 /// </summary> 源代码网推荐 源代码网推荐 [STAThread] 软件开发网 www.mscto.com 源代码网推荐 源代码网推荐 static void Main(string[] args) 源代码网推荐 源代码网推荐 { 源代码网推荐 源代码网推荐 if(args[0]=="s") 源代码网推荐 源代码网推荐 { 源代码网推荐 源代码网推荐 int i; 源代码网推荐 源代码网推荐 FileStream fr = new FileStream(args[1],FileMode.Open, FileAccess.Read ); 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 int FileSize = Convert.ToInt32(fr.Length) /Convert.ToInt32(args[2]); 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 StreamWriter fwlist = new StreamWriter(args[1] "." "list",false); 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 for(i=1;i<=Convert.ToInt32(args[2]);i ) 源代码网推荐 源代码网推荐 { 源代码网推荐 源代码网推荐 byte [] byteread=new byte[FileSize] ; 源代码网推荐 源代码网推荐 fr.Read(byteread,0,FileSize); 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 FileStream fw = new FileStream(args[1] "." i ,FileMode.CreateNew, FileAccess.Write); 源代码网推荐 源代码网推荐 fwlist.WriteLine(args[1] "." i ); 源代码网推荐 源代码网推荐 foreach(byte bNext in byteread) 源代码网推荐 源代码网推荐 fw.WriteByte(bNext) ; 源代码网推荐 源代码网推荐 fw.Close(); 源代码网推荐 源代码网推荐 } 源代码网推荐 源代码网推荐 if( fr.Length!=fr.Position ) 源代码网推荐 源代码网推荐 { 源代码网推荐 源代码网推荐 byte [] byteread=new byte[Convert.ToInt32(fr.Length) -FileSize*(i-1)] ; 源代码网推荐 源代码网推荐 fr.Read(byteread,0,Convert.ToInt32(fr.Length) -FileSize*(i-1)); 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 FileStream fw = new FileStream(args[1] "." i ,FileMode.CreateNew, FileAccess.Write); 源代码网推荐 源代码网供稿. |
