2017-07-21 6 views
0

zipファイルを作成していますが、zipファイルを開くと、D:LocalDiskのようなルートパスが表示され、zipファイルは表示されません。 これは、同じ問題に直面して誰かのジップzipoutputstreamフォルダの手前にルートドライブパスを追加します。

public void StartZip(string directory, string zipfile_path) 
{ 
    // the directory you need to zip 
    DirectoryInfo Dictiontory = new DirectoryInfo(directory); 
    //to get sub directories 
    DirectoryInfo[] Dir = Dictiontory.GetDirectories(); 
    string[] filenames; 
    // path which the zip file built in 
    ZipOutputStream s = new ZipOutputStream(File.Create(zipfile_path)); 
    foreach (DirectoryInfo folder in Dir) 
    { 
     filenames = Directory.GetFiles(directory+"/"+folder); 
     foreach (string filename in filenames) 
     { 
      FileStream fs = File.OpenRead(filename); 
      byte[] buffer = new byte[fs.Length]; 
      fs.Read(buffer, 0, buffer.Length); 
      ZipEntry entry = new ZipEntry(filename); 
      s.PutNextEntry(entry); 
      s.Write(buffer, 0, buffer.Length); 
      fs.Close(); 
     } 
    } 
    s.SetLevel(5); 
    s.Finish(); 
    s.Close(); 
} 

答えて

0

使用これを作成するための私のコードです:

ZipFile.CreateFromDirectory(directory, zipfile_path); 
関連する問題