我尝试了许多不同的方法,但似乎无法正确解决。
这是到目前为止我尝试过的代码...
[String]$dateValue = '20161212'
[String]$dateStamp = $dateValue -f (Get-Date)
[String]$dateStamp2 = ([datetime]::parseexact($dateValue, "yyyyMMdd", [System.Globalization.CultureInfo]::InvariantCulture)).Date
[String]$dateStamp3 = ([datetime]::FromFileTime($dateValue)).ToString('g')
Write-Host '$dateStamp = ' $dateStamp
Write-Host '$dateStamp2 = ' $dateStamp2
Write-Host '$dateStamp3 = ' $dateStamp3
当前代码输出
$dateStamp = 20161212
$dateStamp2 = 12/12/2016 00:00:00
$dateStamp3 = 12/31/1600 5:00 PM
所需的代码输出
$dateStamp = 12/12/2016
有任何想法吗?
最佳答案
一旦有了datetime对象,就可以轻松地将其转换为所需的任何字符串格式。您第二次尝试是如此接近。添加ToString
可以指定字符串格式。
([datetime]::parseexact($dateValue, "yyyyMMdd", [System.Globalization.CultureInfo]::InvariantCulture)).ToString("dd/MM/yyyy")
关于powershell - 将日期格式从 "yyyymmdd"更改为 "mm/dd/yyyy",我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36562124/