我想使用ADO.NET和PowerShell閱讀Firefox的places.sqlite過期日期字段。我正在尋找Powershell函數將unix時間轉換爲字符串?
顯然這些字段是在Unix時間。
我正在尋找一個轉換到.NET日期時間或字符串
編輯: 我想要的數據行綁定到一個WPF GridView控件。
我需要一種方法來執行SQL查詢內的轉換,或者將數據行綁定到網格。
我想使用ADO.NET和PowerShell閱讀Firefox的places.sqlite過期日期字段。我正在尋找Powershell函數將unix時間轉換爲字符串?
顯然這些字段是在Unix時間。
我正在尋找一個轉換到.NET日期時間或字符串
編輯: 我想要的數據行綁定到一個WPF GridView控件。
我需要一種方法來執行SQL查詢內的轉換,或者將數據行綁定到網格。
像這樣的東西應該把你在正確的道路上:
[TimeZone]::CurrentTimeZone.ToLocalTime(([datetime]'1/1/1970').AddSeconds($unix))
[timezone]::CurrentTimeZone.ToLocalTime(([datetime]'1/1/1970').AddSeconds(1303743289))
function Convert-UnixTimeToDateTime([int]$UnixTime)
{
(New-Object DateTime(1970, 1, 1, 0, 0, 0, 0, [DateTimeKind]::Utc)).AddSeconds($UnixTime)
}
這將返回一個對象與 「種」 設置爲UTC。然後,如果您想要本地時間,請在結果對象上調用ToLocalTime方法。
工作解決我的問題是
SELECT datetime (b.dateAdded/1000000, 'unixepoch', 'localtime') dateAdded from moz_bookmarks
BTW它部分地隱藏在the original documentation。
另一部分是,你必須找出,你必須除以整數1000000獲得秒。
我接受這個答案,因爲它是verbatime問題的答案。我的問題有點不同,同時我找到了解決方案 – 2011-04-25 21:10:50