2012-02-24 312 views
-1

我从该文件夹“D:\ Nagaraj \ Dotnet \ Zipfile \ Zipfile \ Filebuild \ Hi”生成该“Hi”文件夹中有2个txt文件的zip文件。 .....是现在生成Hi.zip file.But问题是在该zip文件有这个特定的路径"D:\Nagaraj\Dotnet\Zipfile\Zipfile\Filebuild\Hi",并在该文件夹中有2个文本文件。现在我需要删除这条道路"D:\Nagaraj\Dotnet\Zipfile\Zipfile\Filebuild\Hi",并直接生成Hi.zip文件和2 txt文件中......感谢....提前如何删除zip文件夹中的文件夹路径

我使用sharpziplib库在此处输入代码

protected void Page_Load(object sender, EventArgs e) 
{ 
    StartZip("D:/Nagaraj/Dotnet/Zipfile/Zipfile/Filebuild/Hi",".zip"); 
} 

public void StartZip(string directory, string zipFileName) 
{ 
    ZipFile z = ZipFile.Create(directory + zipFileName); 
    z.BeginUpdate(); 
    string[] filenames = Directory.GetFiles(directory); 
    foreach (string filename in filenames) 
    { 
    z.Add(filename); 
    } 
    z.CommitUpdate(); 
    z.Close();  
} 
+0

你可以在你的问题更精确吗?例子将非常感谢 – 2012-02-24 12:03:16

+0

下载帮助文件,有些地方有你要搜索的选项http://wiki.sharpdevelop.net/SharpZipLib_Links.ashx – Aristos 2012-02-24 14:13:28

回答

0

从帮助文件中,您添加文件的位置,您会说如何在zip中显示。

public void StartZip(string directory, string zipFileName) 
{ 
    using(ZipFile z = ZipFile.Create(directory + zipFileName)) 
    { 
    z.BeginUpdate(); 

    // Create a reference to the directory. 
    DirectoryInfo di = new DirectoryInfo(directory); 
    // Create an array representing the files in the current directory. 
    FileInfo[] fi = di.GetFiles(); 

    // here the entryName is the name that you like to show inside zip 
    foreach (FileInfo fiTemp in fi) 
     z.Add(fiTemp.FullName, fiTemp.Name); 

    z.CommitUpdate(); 
    z.Close();  
    } 
}