.net Powershell将datetime对象转换为字符串-如何以非军事格式显示时间?

.net Powershell将datetime对象转换为字符串-如何以非军事格式显示时间?,.net,powershell,datetime,.net,Powershell,Datetime,假设我有一个名为$d的变量,它将日期作为字符串转换为DateTime对象: $d = [datetime]"1-2-14 1:25pm" 我可以通过执行以下操作将该对象转换回字符串: "{0:MM/dd/yyyy hh:mm}" -f [datetime]$d 但这在军事时间输出“hh:mm”。有没有办法让它用am/pm输出非军事时间的时间部分? 如果您想要24小时制,请用HH代替小时: "{0:MM/dd/yyyy HH:mm}" -f $d 对[datetime]的强制转换是不必要的,

假设我有一个名为$d的变量,它将日期作为字符串转换为DateTime对象:

$d = [datetime]"1-2-14 1:25pm"
我可以通过执行以下操作将该对象转换回字符串:

"{0:MM/dd/yyyy hh:mm}" -f [datetime]$d
但这在军事时间输出“hh:mm”。有没有办法让它用am/pm输出非军事时间的时间部分?

如果您想要24小时制,请用HH代替小时:

"{0:MM/dd/yyyy HH:mm}" -f $d

对[datetime]的强制转换是不必要的,$d已经是[datetime]类型了。

它不是返回秒!你知道我应该如何返回秒数吗?如果你按照答案中的链接并向上滚动两个部分,你会看到你可以使用ss来完成这个任务
"{0:MM/dd/yyyy HH:mm}" -f $d