[英]Powershell Convert to time
我需要按時間格式轉換一些特定的字符串。
2M37.526S - 這代表 2 分 37 秒和 526 毫秒。
我需要在“{0:hh:mm:ss\,fff}”上進行轉換
如何做到這一點的最佳方法? 我的代碼轉換但返回錯誤的訂單值。
我的代碼:
$a = '2M37.526S' -replace '[mM]',':' -replace '[.]', ':' -replace '[sS]', ''
$ts = [timespan]::fromseconds($a)
("{0:hh\:mm\:ss\,fff}" -f $ts)
謝謝你的幫助
我認為您不需要進行任何更換。 只需使用 ParseExact,並提供格式
https://docs.microsoft.com/en-us/dotnet/api/system.timespan.parseexact?view=netcore-3.1
當您的TimeSpan
被正確解析時,您的格式化代碼應該可以正常工作。
$ts = [TimeSpan]::ParseExact('2M37.526S', "m\Mss\.fff\S", [CultureInfo]::InvariantCulture)
("{0:hh\:mm\:ss\,fff}" -f $ts)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.