猿问

如何使用 C# ZipFile 处理空的 zip 文件

我有一个用 ZipFile 解压缩文件的 C# 程序。它正常工作,但如果 zip 文件为空,则会失败。

编码:

System.IO.Compression.ZipFile.ExtractToDirectory(fileName, dirName);

有没有办法检测 zip 文件是否为空并将其删除?(如果文件失败且不为空,我不想删除该文件。)


交互式爱情
浏览 188回答 1
1回答

ITMISS

你可以试试这个:if (!string.IsNullOrEmpty(dirName) && Directory.Exists(dirName)){    try    {        System.IO.Compression.ZipFile.ExtractToDirectory(fileName, dirName);    }    catch (ArgumentException ex)    {        // file is empty (as we already checked for directory)        File.Delete(fileName);    }    // OR    if (new FileInfo(fileName).Length == 0)    {        // empty        File.Delete(fileName);    }    else    {        System.IO.Compression.ZipFile.ExtractToDirectory(fileName, dirName);    }}
随时随地看视频慕课网APP
我要回答