.net - 是否有标准的 DateTime 字符串表示形式作为 Windows 文件名有效并且可以使用 DateTime.Parse 进行解析?

标签 .net windows powershell filenames

作为简单备份过程的一部分,我想保存名称指示备份日期和时间的文件。现在我正在使用 yyyyMMddTHHmmss,即“20100601T115720”。我希望能够解析这些日期以允许清理早于特定日期的文件。 (备份日期时间不必与文件创建日期相同。)这最终在 Powershell 中运行,使用类似于以下内容的行:

Get-ChildItem $backupDirectory -filter *.bak | where { [System.DateTime]::ParseExact([System.IO.Path]::GetFileNameWithoutExtension($_), "yyyyMMddTHHmmss", [System.Globalization.CultureInfo]::InvariantCulture) -lt $oldestDate }

请注意,我目前正在使用 DateTime.ParseExact 方法。这很好用,所以我想我的问题更具学术性,但我想知道是否有一种“标准”Windows 文件名格式:

  • 包括日期和时间信息以及
  • 可以使用标准的 DateTime.Parse 进行解析

最佳答案

这不是“标准”文件名格式。

我通常使用 yyyy-MM-dd, HH-mm-ss,这比一串数字更具可读性。

关于.net - 是否有标准的 DateTime 字符串表示形式作为 Windows 文件名有效并且可以使用 DateTime.Parse 进行解析?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2014690/

相关文章:

.net - 从 Windows 通过 Entity Framework 连接到 Informix 的问题

c# - 如何使用C#获取显示器支持的最大屏幕分辨率

c++ - 如何编程关键内存扫描仪的离线形式

powershell - 在 PowerShell 中忽略输出的更好(更干净)的方法是什么?

.net - 实体从数据库中具体化后的 EF Core 事件

c# - 如何修剪字节数组的几个字节?

windows - 终结器中的 WCF NullReferenceException

powershell - 为什么在 PowerShell 中等于 "-eq"而不仅仅是 "="?

powershell - 搜索并获取文件,但如果值为 null,则忽略代码

.net - 文本框验证仅输入大于零的值