ASP.NETは、パスファイルの解凍に指定されたzipファイルと場所を抽出します

このリンク:https://www.cnblogs.com/yifeixue/p/11769905.html

私は効果的なプロのテストされています(* ^▽^ *)

直接コードでADO、:

1          ///  <まとめ> 
2          /// 抽出ファイル
 。3          ///  </要約> 
4          /// <PARAM NAME = "ZipPath"> ファイルを解凍する</ PARAM> 
。5          ///  <PARAM NAME = "パス"> 解凍後のファイルのパス</ PARAM> 
6。         パブリック 文字列 UnzipTheFiles(文字 TorepotFiles、reportPath)
 7。         {
 8。             文字列のエラー= NULL ;
 9              ActionRetDto ActionRet = 新しい新しいActionRetDto();
 10  
11。             ZipInputStream S = 新しいZipInputStream(File.OpenRead(TorepotFiles))。
12  
13              またはZipEntry theEntry。
図14は、             お試し
15              {
 16                  ながら((theEntry = s.GetNextEntry())!= NULL 17                  {
 18                       fileNameに= System.IO.Path.GetFileName(theEntry.Name)。
19                      // 生成解压目录
20                      Directory.CreateDirectory(reportPath)。
21  
22                      であれば(ファイル名は!= String.Emptyを)
 23                      {
 24                          //解压文件
25                          のFileStreamのStreamWriter = File.Create(reportPath + filename)で。
26  
27                          のintサイズ= 2048 28                          バイト []データ= 新しい バイト [ 2048 ];
29                          一方30                          {
 31                              サイズ= s.Read(データ、0 、data.Length)。
32                              であれば(サイズ> 0 33                              {
 34                                  streamWriter.Write(データ、0 、サイズ)。
35                              }
 36                              他の
37                              {
 38  
39                                  streamWriter.Close()。
40                                  streamWriter.Dispose()。
41                                  ブレーク;
42                              }
 43                          }
 44  
45                          streamWriter.Close()。
46                          streamWriter.Dispose()。
47                      }
 48                  }
 49              }
 50             キャッチ(例外EX)
 51              {
 52                  エラー= ErrorUtil.GetError(EX)。
53                  ActionRet.Error = エラー。
54                  スローEX。
55              }
 56              最後に
57              {
 58                  S。CLOSE()。
59                  s.Dispose()。
60              }
 61              リターンreportPath。
62          }

このリンク:https://www.cnblogs.com/yifeixue/p/11769905.html

おすすめ

転載: www.cnblogs.com/yifeixue/p/11769905.html