获取文本文件的创建日期和上次访问日期

时间:2014-04-24 18:31:51

标签: file text .net c#

我正在尝试使用.Net提取文本文件的创建时间和上次访问时间。我写了以下代码

使用System; 使用System.Collections.Generic; 使用System.Linq; 使用System.Text; 使用System.IO;

命名空间ConsoleApplication3 {

课程计划 {

static void Main()
{

FileInfo info = new FileInfo("C:\\file.txt");

DateTime time = info.CreationTime;
Console.WriteLine(time);

time = info.LastAccessTime;
Console.WriteLine(time);

time = info.LastWriteTime;
Console.WriteLine(time);
    Console.ReadLine();
}

}      }

输出

01-01-1601 5:30:00 01-01-1601 5:30:00 01-01-1601 5:30:00

我无法理解为什么它以这种方式给我输出并且它有什么问题? 我该如何纠正?

2 个答案:

答案 0 :(得分:0)

来自MSDN

  

如果FileSystemInfo对象中描述的文件不存在,则此属性将返回公元1601年1月1日午夜12点,协调世界时(UTC),调整为当地时间。

所以我猜你是在东部时区,(格林尼治标准时间+5.5小时)基于05:30 AM的时间戳。

逐步执行代码并确保文件存在,并且运行该程序的用户可以访问该文件。

在尝试使用对象中的任何值之前,始终检查FileInfo.Exists()。

考虑在路径字符串前加一个@ 例如:@"c:\file.txt"。 @将中止任何转义序列。

答案 1 :(得分:0)

  • 文件可能不存在。首先检查文件是否存在,然后继续 FileInfo的。
  • 当您使用路径时@"C:\folder\file.txt""C:\\folder\\file.txt"。不要试图混淆两者。

这很可能是上述原因之一。