gpt4 book ai didi

powershell - 如何将 PowerShell 日期时间字符串从 24 小时格式转换为 12 小时格式?

转载 作者:行者123 更新时间:2023-12-02 22:36:28 25 4
gpt4 key购买 nike

PowerShell 脚本中所需的实际行是:

$tsd = [datetime]::ParseExact($TSDiff,'yyyyMMddhhmmsstt',$null)

但是 $TSDiff使用的变量的时间表示为,不含 AM/PM:
20171023212800

这是一种 24 小时格式,其中晚上 11 点由 23 表示。它是使用 FTP 请求检索的,该请求似乎只返回没有 AM/PM 的 24 小时格式字符串。

分解这一点,以下 PowerShell 命令有效:
[datetime]::ParseExact("20171023092800",'yyyyMMddhhmmss',$null)

但以下 PowerShell 命令不起作用:
[datetime]::ParseExact("20171023212800",'yyyyMMddhhmmss',$null)

第二行不起作用的原因很清楚;小时数字采用 24 小时格式,如 $TSDiff在这篇文章的开头列出。

PowerShell 中是否有一种简单的方法来转换字符串 2017102321280020171023092800PM ?

最佳答案

来自 Formatting Dates and Times

[...]

  • h, %h - The hour in a 12-hour clock. Single-digit hours will not have a leading zero. Specify %h if the format pattern is not combined with other format patterns.
  • hh - The hour in a 12-hour clock. Single-digit hours will have a leading zero.
  • H, %H - The hour in a 24-hour clock. Single-digit hours will not have a leading zero. Specify %H if the format pattern is not combined with other format patterns.
  • HH - The hour in a 24-hour clock. Single-digit hours will have a leading zero.

[...]


当您使用 hh 将日期时间字符串转换为 12 小时格式的字符串时在格式说明符中,它将转换为带有 HH 的 24 小时字符串。在它喜欢:
[datetime]::ParseExact("20171023212800",'yyyyMMddHHmmss',$null)

关于powershell - 如何将 PowerShell 日期时间字符串从 24 小时格式转换为 12 小时格式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46901156/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com