C#创建zip,添加文件但无法打开

时间:2015-11-01 16:50:30

标签: c# zip

我不是C#开发人员,所以我的知识有限。但是,我试图在C#中编写一个程序,该程序将Windows安全日志导出到特定日期并将其导出为evtx文件。

但接下来我要做的就是将这个evtx文件添加到一个zip文件中。下面的代码创建了zip文件(我可以看到它)并将evtx文件添加到zip中(我认为因为在windows中探索大小从0kb变为更多)。

#region "COMPRESS THE EVTX FILE INTO A ZIP FILE: "
// First create a new ZIP archive in the "Achives" folder.
string zipFileName = "Zip-" + getDateTimeStamp(1) + ".zip";
string zipFilePath = System.IO.Path.Combine(zipEvtxDirectoryPath, zipFileName);
ZipArchive zipFile = ZipFile.Open(zipFilePath, ZipArchiveMode.Create);

// Add the evtx file created in program directory to this zip archive.
Console.WriteLine(evtxFilePath);
Console.WriteLine(evtxFileName);
zipFile.CreateEntryFromFile(evtxFilePath, evtxFileName);

//evtxFilePath = "D:\TEST\VS\FilesAndFolders\TestDirectory\Archives\Security-Log-Archive-11-01-2015-04-18-58.evtx"
//evtxFileName = "Security-Log-Archive-11-01-2015-04-18-58.evtx"
//zipFilePath = "D:\TEST\VS\FilesAndFolders\TestDirectory\Archives\Zip-11-01-2015-04-18-58"

#endregion

但是当我尝试使用Windows资源管理器打开zip文件时,它会给我一个错误。

  

Windows无法打开该文件夹。

     

压缩(压缩)文件夹' D:\ TEST \ VS \ FilesAndFolders \ TestDirectory \ Archives \ Zip-11-01-2015-04-18-58.zip'无效。

也许,我使用的代码不完整?或者我错过了什么?

1 个答案:

答案 0 :(得分:2)

你已经编写了一段打开文件并写入的代码。 一旦创建文件并在其中写入,您应该告诉PC关闭文件。

我不完全确定这个例子中的命令,尝试像

这样的东西
zipFile.close;