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

波兰格式日期字符串转DateTime对象失败,求问题排查

问题分析与解决方案

嘿,问题很明确啦——你用的格式字符串和输入的日期格式完全不匹配,所以TryParseExact才会失败。

核心问题点

你的输入字符串是"24.04.2018 00:00:00",它的格式是**dd.MM.yyyy HH:mm:ss**(日.月.年 时:分:秒),但你在TryParseExact里传的格式是"MM/dd/yyyy"(月/日/年),既没匹配分隔符(点号 vs 斜杠),也没包含输入里的时间部分,系统自然识别不了。

正确的代码实现

要成功转换,你需要先让格式字符串完全匹配输入的结构,之后如果需要MM/dd/yyyy格式的字符串,再对转换后的DateTime对象做格式化输出就行:

string input = "24.04.2018 00:00:00";
DateTime d;
// 用输入对应的格式字符串去匹配
if (DateTime.TryParseExact(input, "dd.MM.yyyy HH:mm:ss", System.Globalization.CultureInfo.InvariantCulture, System.Globalization.DateTimeStyles.None, out d)) {
    // 如果需要输出MM/dd/yyyy格式的字符串
    string formattedDate = d.ToString("MM/dd/yyyy", System.Globalization.CultureInfo.InvariantCulture);
    // 在这里执行你的业务逻辑,比如使用formattedDate或者直接操作DateTime对象d
}

额外说明

DateTime对象本身是不携带“格式”信息的,它只是存储日期时间的数值。所谓的“格式”只是在将其转换为字符串时才需要指定的显示规则。所以只要成功转换出DateTime对象d,后续你可以根据需求把它格式化成任何你想要的字符串形式。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.25 03:27:56