首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >powershell json DateFormat

powershell json DateFormat
EN

Stack Overflow用户
提问于 2017-10-18 23:05:43
回答 2查看 1.3K关注 0票数 0

以JSON格式从rest-API返回的数据,其中数据/时间格式为

代码语言:javascript
运行
复制
{
  "userKey":  ¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤,
  "userId":  "¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤",
  "userEmail":  "¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤",
  "userPrincipalName":  "¤¤¤¤¤¤¤¤¤¤¤¤¤¤",
  "displayName":  "¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤",
  "intuneLicensed":  true,
  "isDeleted":  true,
  "startDateInclusiveUTC":  "2017-10-16T00:00:00Z",
  "endDateExclusiveUTC":  "9999-12-31T00:00:00Z",
  "isCurrent":  true,
  "rowLastModifiedDateTimeUTC":  "2017-10-17T00:24:11.8233333Z",
  "PictureUrl":  "¤¤¤¤¤¤¤¤¤¤¤¤.dk"
}

日期/时间格式不正确,数据来自Intune DataWareHouse API

数据是通过PowerShell请求的,我的问题是这是PowerShell Shell Bug还是JSON handel数据格式

日期应显示为

MM/DD/YY HH:MM:SS

see the picture

EN

回答 2

Stack Overflow用户

发布于 2017-10-18 23:10:19

日期只是一个字符串,包含ISO-8601格式的日期(因为JSON没有DateTime类型)。解析日期,然后将其格式化为不同的字符串:

代码语言:javascript
运行
复制
PS> [datetime]::parse("9999-12-31T00:00:00Z").Tostring('MM/dd/yy HH:mm:ss')
12-31-99 01:00:00
票数 1
EN

Stack Overflow用户

发布于 2017-10-19 04:11:40

我做了一个Convertfrom-json,然后遍历了每个Note属性,如果有更好的方法,请随意评论:)

代码语言:javascript
运行
复制
$IntuneCollectionData | get-member -type NoteProperty | foreach-object {
    if ($_.value -match "(\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+)|(\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d)|(\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d)")
    {

        $NewDateTime = [datetime]::parse("$($_.value)").Tostring('MM/dd/yy HH:mm:ss')

        $_.value = $NewDateTime 

    }

}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46813427

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档