我正在使用iTextSharp从PDF文件中读取文本.但是,有时我无法提取文本,因为PDF文件只包含图像.我每天都下载相同的PDF文件,我想查看PDF是否已被修改.如果无法获得文本和修改日期,MD5校验和是否是判断文件是否已更改的最可靠方法?
如果是的话,一些代码样本会受到赞赏,因为我对密码学没有多少经验.
我有一个.NET EXE文件.我想在C#应用程序中找到文件创建日期和修改日期.可以通过反射或IO流来实现吗?
当我调用FileInfo(path).LastAccessTime或FileInfo(path).LastWriteTime正在写入的文件时,它返回创建文件的时间,而不是上次写入文件的时间(即现在).
有没有办法获得这些信息?
编辑:到目前为止的所有回复.我没有尝试,Refresh()但也没有尝试过.我返回文件开始写入的时间.静态方法也是如此,并创建了一个新的实例FileInfo.
Codymanix可能有答案,但我没有运行Windows Server(使用Windows 7),我不知道设置的测试位置.
编辑2:没有人觉得这个功能似乎不起作用很有趣?
如何在C#中读取文件的修改日期?
我可以使用以下代码读取文件的创建日期:
ModifyDate = File.GetCreationTime(FilePath)
Run Code Online (Sandbox Code Playgroud) 我编写了一个工具来收集工具用户指定的时间窗口内的日志文件.到目前为止,我通过在日志文件上使用File.GetLastWriteTime方法来建立日志文件集合,将其与用户输入和收集的时间进行比较,并根据这些比较的结果进行收集.这是一个小代码片段:
DateTime logFileEnd = File.GetLastWriteTime(matchingActiveLogFile);
Run Code Online (Sandbox Code Playgroud)
但是我注意到我的工具没有收集我认为它应该完成的一些日志文件.看来这个方法返回的DateTime已经过时了(文件中最近的日志记录比这个日期时间的值更多).
当我查看相关文件的"修改日期"时,它也"过时",文件中的最新日志记录比"修改日期"更新.
我如何才能获得准确的"GetLastWriteTime"或"修改日期"值?