【问题标题】:How to solve date format problem when using Window XP in C?在 C 中使用 Window XP 时如何解决日期格式问题?
【发布时间】:2011-06-02 09:32:21
【问题描述】:

我使用的是 Window 7,当我在本地运行我的代码时一切正常,但是当上传到 Window server 2003 时,代码会出现错误:

“字符串未被识别为有效的日期时间”

我的计算机设置(日期格式)与我的窗口服务器相同。还是出现同样的问题。

下面是我的代码:

dateFrom = Convert.ToDateTime("12-6-2011");

dateTo = Convert.ToDateTime("18-6-2011");

//or    
dateFrom = DateTime.ParseExact("12-6-2011", "MM/dd/yyyy", CultureInfo.InvariantCulture);

dateTo = DateTime.ParseExact("18-6-2011", "MM/dd/yyyy", CultureInfo.InvariantCulture);

//i using parse also din come out.

【问题讨论】:

    标签: c# vb.net c#-3.0 c#-2.0


    【解决方案1】:

    我不知道这与“C”语言有何关系,因此我可能误解了某些内容。但是,据我所知,您使用的格式字符串错误。

    如果您的日期总是这样,请尝试使用“d-M-yyyy”之类的格式字符串。

    请查看以下页面以供参考:http://msdn.microsoft.com/en-us/library/8kb3ddd4.aspx

    【讨论】:

    • 感谢分享我通过你的链接解决了我的问题,虽然与 C 语言 Xp.haha 无关。哈哈
    【解决方案2】:

    MM 代表月份。您应该使用 dd/MM/yyyy 来拟合您的数据。

    【讨论】:

    • 分隔符不是斜线(美国),而是破折号(ISO)。从文档看来,您必须正确指定分隔符。
    • @Krumelur:日期指定为“18-6-2011”,因此要么更改数据格式,要么更改数据本身。我觉得改格式比较合理
    【解决方案3】:

    试试:

    dateFrom = DateTime.ParseExact("12-6-2011", "dd-MM-yyyy", CultureInfo.InvariantCulture);
    dateTo = DateTime.ParseExact("18-6-2011", "dd-MM-yyyy", CultureInfo.InvariantCulture);
    

    【讨论】:

    • 不能也出现同样的问题,实际上我的代码在我的本地运行正常,但感谢告知,窗口服务器不接受。
    猜你喜欢
    • 2021-04-20
    • 2021-09-21
    • 2011-10-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-10-23
    • 1970-01-01
    相关资源
    最近更新 更多