1case("zip")://压缩
2string[]zip_tmp=this.name1.Value.Split(newchar[]{'*'});
3stringzip_tmp1=zip_tmp[zip_tmp.Length-1];
4if(this.CheckName(zip_tmp1))//检测文件命名的合法性
5{
6stringzip_tmp2=zip_tmp1.Replace(".zip","");
7
8//移除“.zip”后缀,并防止名称重复
9
10this.NameExisted(1,ServerDir+@"personal\"+zip_tmp2+".zip",outzip_tmp2);
11StreamWriterzip_sr=File.CreateText(ServerDir+"list.dat");
12zip_sr.Write("");
13zip_sr.Close();
14for(intm=0;m<zip_tmp.Length-1;m++)
15{
16//以系统默认的ANSI编码创建压缩文件列表
17
18StreamWriterzip_sw2=newStreamWriter(ServerDir+"list.dat",true,System.Text.Encoding.Default);
19zip_sw2.WriteLine(ServerDir+zip_tmp[m]);
20zip_sw2.Close();
21}
22System.Diagnostics.ProcessProcess1=newSystem.Diagnostics.Process();
23Process1.StartInfo.FileName=ServerDir+"Winrar.exe";
24Process1.StartInfo.Arguments="a-ep1-inul-y"+zip_tmp2+@"@"+ServerDir+"list.dat";
25Process1.Start();//进行压缩
26while(!Process1.HasExited)//等待压缩的完成
27{
28}
29}
30break;
31case("unzip")://解压缩
32string[]un_tmp=this.name1.Value.Split(newchar[]{'*'});
33inti2=0;//防止名称冲突的参数
34foreach(stringun_tmp2inun_tmp)
35{
36if(un_tmp2!="")
37{
38stringun_time=System.DateTime.Now.ToShortDateString()+"-"+System.DateTime.Now.Hour.ToString()+"-"+System.DateTime.Now.Minute.ToString()+"-"+(System.DateTime.Now.Second+i2).ToString();
39stringun_dir=ServerDir+@"personal\Unzip-"+un_time;
40Directory.CreateDirectory(un_dir);//创建以解压时间为名的文件夹
41StreamWriterun_sw=File.AppendText(ServerDir+"DirState.dat");
42un_sw.Write(@"personal\Unzip-"+un_time+"*");
43un_sw.Close();
44System.Diagnostics.ProcessProcess2=newSystem.Diagnostics.Process();
45Process2.StartInfo.FileName=ServerDir+"Winrar.exe";
46Process2.StartInfo.Arguments="x-inul-y"+ServerDir+un_tmp2+""+un_dir;
47Process2.Start();//进行解压
48while(!Process2.HasExited)//等待解压的完成
49{
50}
51i2++;
52}
53}
54break;
55http://www.developerfusion.co.uk/utilities/convertvbtocsharp.aspx
在程序里面(服务器端)调用Winrar压缩文件的方法?另寻求一条语句转换的方法。到C#。...