如何使LastWriteTime返回文化敏感日期字符串

时间:2015-06-25 12:21:34

标签: date powershell output

我有这个:

$LogfileInfo = Get-Item C:\windows
$LogfileInfo.LastWriteTime
"Explaining Text: " + $LogfileInfo.LastWriteTime

第2行输出为:

21. maj 2015 13:44:45

第3行输出为:

Explaining Text: 05/21/2015 13:44:45

它会改变输出,即使它是同一个变量!?

如何获得第2行输出(命名月份,而不是反转日期/月份),但前面有文字,如第3行?

2 个答案:

答案 0 :(得分:2)

System.DateTime的默认输出是DateTime:

ProcessStartInfo

答案 1 :(得分:1)

在某些时候,DateTime值将转换为字符串。取决于何时完成,可以应用当前区域性和默认格式的不同设置。

$LogfileInfo.LastWriteTime

转换为字符串是在PSH out-default内完成的,该out-…适用于任何管道,而其末尾没有另一个.format.ps1xml cmdlet。这将使用System.DateTime的默认格式定义("Explaining Text: " + $LogfileInfo.LastWriteTime 文件)。

但是在

$LogfileInfo.LastWriteTime.ToString()

在创建字符串时发生转换。

尝试用

替换第一个
propTypes

你应该得到与第一个格式相同的格式。