在VB.NET中获取文件修改日期

Ian*_*anb 17 .net vb.net file-io last-modified

我在文件夹中有许多文件,我需要获取最后修改日期.所以我用过

FDate = IO.File.GetLastWriteTime(FName)
Run Code Online (Sandbox Code Playgroud)

它适用于某些文件,但在其他文件中,我得到的日期为1/1/1601.但是当我在Windows资源管理器中检查文件时,所有日期看起来都很正常(最近).所以,我猜测文件系统中存储了多个文件日期,而.NET所看到的并不是Windows所看到的.如何在文件资源管理器窗口中准确显示"修改日期"的日期?

我尝试了一些Visual Basic 6.0 API的东西,但这似乎不适用于.NET.

Mar*_*age 32

File.GetLastWriteTime方法:

如果path参数中描述的文件不存在,则此方法返回到公元1601年1月1日午夜12点(CE)协调世界时(UTC),调整为当地时间.

您查询的文件可能已丢失.

  • 我不敢相信,你是对的,它不是!但它早些时候!! 还有其他奇怪的事情正在发生.有趣的是,当你遇到问题时,你有时会错过显而易见的问题.干杯 (4认同)

小智 7

下面提到的查询将获得LastModifiedDate文件夹中包含的所有文件的正确信息。

    Dim strFilepath = ""  'Specify path details
    Dim directory As New System.IO.DirectoryInfo(strFilepath)
    Dim File As System.IO.FileInfo() = directory.GetFiles()
    Dim File1 As System.IO.FileInfo
    For Each File1 In File
        Dim strLastModified As String
        strLastModified = System.IO.File.GetLastWriteTime(strFilepath & "\" & File1.Name).ToShortDateString()
    Next
Run Code Online (Sandbox Code Playgroud)