gpt4 book ai didi

c# - 中国日期 - 在有效的日期时间无法识别字符串

转载 作者:太空宇宙 更新时间:2023-11-03 12:49:58 24 4
gpt4 key购买 nike

我有一个问题,自从将我们的应用程序代码库升级到 .NET 4 并在 Windows 2012 上运行后才出现在 Windows 2012 或 Windows 2008 上的 .NET 2 (3/3.5) 中不会出现此问题Windows 2008 上的 .NET 4 中不会出现此问题

在整个代码库中,重复类似的语句。

var sDate = DateTime.Now.ToString("dd-MMM-yyyy");
var dDate = DateTime.Parse(sDate);

令人惊讶的是,这并没有像您预期的那样产生许多问题,但是当代码编译为在 Windows 2012 上为我们的中国客户运行应用程序的 .NET 4 时,这不再适用于组合,他们在zh-CN文化。DateTime.Now.ToString("dd-MMM-yyyy"); 的输出值发生了变化,因此对于 2016 年 3 月 3 日,将输出以下内容。

.NET 2.0/Windows 2008 - 10-三月-2016

.NET 4.0/Windows 2012 - 10-3月-2016

解析10-3月-2016会出现格式异常。解析 10-三月-2016 在 .NET 4 和 Windows 2012 中仍然有效。

是否有一个简单的解决方案来更正 DateTime.ToString() 的输出以输出 10-三月-2016 而不是 10-三月-2016 谢谢?

最佳答案

  1. 更改区域和语言选项中的格式。
  2. 如果没有解决问题,尝试:

    CultureInfo culture = new CultureInfo("zh-cn"); // China, simple chinese.
    culture.DateTimeFormat.AbbreviatedMonthNames = new string[]{"一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""};

    重新定义简体中文缩写月名。

关于c# - 中国日期 - 在有效的日期时间无法识别字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35909221/

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