You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PowerShell中使用::ParseExact解析DateTime报错,求排查问题

解决PowerShell中DateTime::ParseExact的参数错误问题

嘿,我来帮你搞定这个ParseExact的报错问题~

首先看你的报错信息:Cannot find an overload for "parseexact" and the argument count: "3",核心问题是你用的三个参数组合不匹配ParseExact的任何合法重载,而且对参数的用法也有误解。

你的代码问题出在哪?

你同时传递了标准格式符'o'和自定义格式字符串'yyyy-MM-ddTHH:mm:ss.fffzzz',还把它们放在了错误的参数位置上。ParseExact的三参数重载逻辑是这样的:

[datetime]::ParseExact(要解析的字符串, 单个格式规则, 格式提供器)

第二个参数只能是单个格式(要么是标准格式符,要么是自定义格式字符串),第三个参数是格式提供器(比如区域信息,通常用[System.Globalization.CultureInfo]::InvariantCulture来避免区域设置干扰)。

两种正确的写法

1. 使用标准格式符'o'

你的输入字符串正好符合ISO 8601的标准格式,对应'o'格式符,直接用这个写法就行:

[datetime]::ParseExact('2018-05-07T15:19:17.839+03:00', 'o', [System.Globalization.CultureInfo]::InvariantCulture)

2. 使用自定义格式字符串

如果你想用自定义格式来匹配输入,只需要传递对应的格式字符串作为第二个参数,同时指定格式提供器:

[datetime]::ParseExact('2018-05-07T15:19:17.839+03:00', 'yyyy-MM-ddTHH:mm:ss.fffzzz', [System.Globalization.CultureInfo]::InvariantCulture)

额外小提示

如果不想指定具体的格式提供器,也可以传$null,但推荐用InvariantCulture,避免因为系统区域设置不同导致解析失败。

内容的提问来源于stack exchange,提问作者shagrath9212

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.27 03:52:42