鉴于我有一个名为 zip 的文件archive.zip
,其中包含一个名为 的文件customerData
,我如何以编程方式检查其中文件的日期archive.zip
?我正在使用命令行 Winzip 实用程序 wzunzip,但我不反对可能使用其他东西。
我正在编写一个 .net 应用程序,它将定期从 .net 读取数据customerData
。文件很大,如果日期戳还没有更新,我想中止操作而不提取,说明有新数据要读取。customerData
通过http://dotnetzip.codeplex.com/。没有本地方法(我知道)可以做到这一点。
示例代码:
ZipFile z = ZipFile.Read(@"C:\archive.zip");
foreach (ZipEntry zEntry in z)
{
Console.WriteLine(zEntry.LastModified.ToString());
}
我认为最简单的 .NET API 是DotNetZip,但 SharpLibZip 也可以。我喜欢并成功使用了许多付费图书馆ChilCat。
更新:如果你不介意脚本。7zip 命令行提供信息
C:\temp\XpsTest>"c:\Program Files\7-zip\7z.exe" l "39 Clues.xps"
7-Zip 4.65 Copyright (c) 1999-2009 Igor Pavlov 2009-02-03
Listing archive: 39 Clues.xps
Date Time Attr Size Compressed Name
------------------- ----- ------------ ------------ ------------------------
2009-09-10 23:06:58 ..... 160 212 FixedDocumentSequence.fdseq
...
如果我可能如此大胆,那么定期检查 zip 文件听起来不太可能是解决许多问题的好方法,除非您无法控制这些数据是如何传递给您的?
如果您可以发布有关您正在处理的问题/情况的更多信息,我敢说这里的工作人员可能会提出一些更有趣的可能解决方案。?
有点跑题了,但有时用正确的问题回答问题不如解决一个更简单、更干净的问题那么有帮助.. 至少我喜欢这样想。
希望有帮助..
设置为提取日期,而不是最初创建文件夹的日期,尽管在7zip文件管理器中查看存档确实显示记录了原始文件夹创建日期...