Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Get file modified date in VB.NET

Tags:

I have a number of files in a folder, and I need to get the last modified date. So I used

FDate = IO.File.GetLastWriteTime(FName) 

It works fine with some files, but on others, I get a date of 1/1/1601. But when I check the files in Windows Explorer, all the dates look normal (recent). So, I'm guessing there are multiple file dates stored in the file system, and the ones .NET is seeing are not the ones Windows is seeing. How can I get exactly the date which appears as "date modified" in a file explorer window?

I tried some Visual Basic 6.0 API stuff, but that doesn't seem to work in .NET.

like image 577
Ianb Avatar asked Sep 08 '10 13:09

Ianb


2 Answers

From File.GetLastWriteTime Method:

If the file described in the path parameter does not exist, this method returns 12:00 midnight, January 1, 1601 A.D. (C.E.) Coordinated Universal Time (UTC), adjusted to local time.

The file you are querying is probably missing.

like image 106
Martin Liversage Avatar answered Oct 02 '22 21:10

Martin Liversage


The query mentioned below will get the correct LastModifiedDate for all of the files contained in a folder.

    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 
like image 36
Praveen Avatar answered Oct 02 '22 20:10

Praveen