从另一个目录中提取zip文件,它会复制zip文件的名称,例如App1.zip,但我只需要App1 no zip

时间:2016-07-05 19:32:10

标签: c# zipfile

我提取了一个名为App1的zip文件,当我将其解压缩时,文件夹名称变为App1.zip。有什么办法可以从新文件夹名称中删除.zip吗?

我试过了

File.Replace(OutputFolder, ".zip", " ");

代码:

if (extension == ".zip")
{
    if (CreateFolderForZipFile == true)
    {
        ZipFile.ExtractToDirectory(path, path.Replace(InputFolder, OutputFolder));
    }  // if
    else if (CreateFolderForZipFile == false)
    {
        ZipFile.ExtractToDirectory(path, Path.GetDirectoryName(path.Replace(InputFolder, OutputFolder)));
    }  // elseif

这会创建一个非zip文件夹,但名为App1.zip

1 个答案:

答案 0 :(得分:1)

尝试

ZipFile.ExtractToDirectory(path, Path.GetDirectoryName(path.Replace(InputFolder, Path.GetFileNameWithoutExtension(OutputFolder))));

或者只是做

OutputFolder = Path.GetFileNameWithoutExtension(OutputFolder);
如果你可以修改OutputFolder的内容,请在原始行之前

编辑: 如果你真的很绝望,你可以尝试将第4行更改为:

ZipFile.ExtractToDirectory(path, path.Replace(InputFolder, OutputFolder).Replace(".zip","");