[英]Getting Date into UK time format correctly before writing to CSV - powershell
[英]Date / Time won't format correctly in Powershell
我在Power Shell腳本中將日期轉換為02/04/2016時遇到問題,它發現為McAfee創建DAT文件的時間。 由於某種原因,它正在輸出02/03/2016 00:00:00,有人可以告訴我為什么要添加00:00:00嗎? 這是我到目前為止的內容:
$mcafee = Get-ItemProperty HKLM:\SOFTWARE\Wow6432Node\McAfee\AVEngine
$mcafee.AvDatDate
$datfile=[datetime]$mcafee.AvDatDate
$datfile.adddays(-3)
$threedaysbefore = $datfile.adddays(-3)
$WPFMcAfeeField.Text = $datfile
$datfile.adddays(-3)
$threedaysbefore = $datfile.adddays(-3)
$WPFMcAfeeField.Text = $datfile
所以我真正的問題是,如何將該語句整體編輯為字段在以下位置的輸出:02/03/2016? 我已經嘗試了所有我能想到的。 我需要重新格式化嗎?
使用[datetime]$mcafee.AvDatDate
可以強制轉換為[datetime]
對象。 您所看到的應該是$datfile
值。 它將包含一個日期和時間 。 由於您未提供值,因此默認為午夜。
如果只想使用日期,則可以使用各種方法來返回該數據。 一個簡單的例子是ToString()
方法。 提供一個日期時間格式 ,它將返回匹配的字符串。
PS C:\temp> $datfile.ToString("MM/dd/yyyy",[cultureinfo]::InvariantCulture)
02/04/2016
設置區域性設置對於確保您從字符串中獲得預期的結果很重要。 在上述情況下,請確保您的區域設置確實干擾了輸出或所謂的對文化不敏感。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.