【问题标题】:How to get File Created Date and Modified Date [duplicate]如何获取文件创建日期和修改日期[重复]
【发布时间】:2014-06-08 05:30:21
【问题描述】:

我有一个 .NET EXE 文件。 我想在 C# 应用程序中找到文件创建日期和修改日期。可以通过反射还是通过IO流来实现?

【问题讨论】:

标签: c# file io last-modified datecreated


【解决方案1】:

您可以使用以下代码:

DateTime creation = File.GetCreationTime(@"C:\test.txt");
DateTime modification = File.GetLastWriteTime(@"C:\test.txt");

【讨论】:

  • 如果我想知道与文件字节相同的事情。怎么可能?
  • 注意——如果它返回一个最小日期可能是因为文件不存在/路径无效等(它不会抛出异常)
【解决方案2】:

您可以使用FileInfo 类来做到这一点:

FileInfo fi = new FileInfo("path");
var created = fi.CreationTime;
var lastmodified = fi.LastWriteTime;

【讨论】:

  • 根据链接,“如果您对同一个文件执行多个操作,使用 FileInfo 实例方法而不是 File 类的相应静态方法会更有效,因为安全检查将并不总是必要的。”
【解决方案3】:

File.GetLastWriteTime 获取最后一次修改

File.CreationTime 获取创建时间

【讨论】:

    【解决方案4】:

    使用:

    FileInfo fInfo = new FileInfo('FilePath');
    var fFirstTime = fInfo.CreationTime;
    var fLastTime = fInfo.LastWriteTime;
    

    【讨论】:

    • 这些东西并不是孤立的。它们是类的一部分。哪个班?
    • SystemIO 类
    【解决方案5】:

    File.GetLastWriteTime方法

    返回上次写入指定文件或目录的日期和时间。

    string path = @"c:\Temp\MyTest.txt";
    DateTime dt = File.GetLastWriteTime(path);
    

    对于创建时间File.GetCreationTime方法

    DateTime fileCreatedDate = File.GetCreationTime(@"C:\Example\MyTest.txt");
    Console.WriteLine("file created: " + fileCreatedDate);
    

    【讨论】:

      【解决方案6】:

      您可以使用此代码查看文件的最后修改日期。

      DateTime dt = File.GetLastWriteTime(path);
      

      和这段代码看创建时间。

      DateTime fileCreatedDate = File.GetCreationTime(@"C:\Example\MyTest.txt");
      

      【讨论】:

      • 请记住,NTFS 中有一个可以追溯到 90 年代的错误 - Windows OS gui - 将创建日期与修改日期混合在一起(想知道为什么他们从未修复它吗?)
      猜你喜欢
      • 2016-12-09
      • 2017-12-16
      • 2010-09-19
      • 1970-01-01
      • 1970-01-01
      • 2015-10-11
      • 2015-02-19
      • 2021-11-24
      • 1970-01-01
      相关资源
      最近更新 更多