【问题标题】:DateTime Conversion and Parsing DateTime.Now.ToString("MM/dd/yyyy hh:mm:ss.fff")DateTime 转换与解析 DateTime.Now.ToString("MM/dd/yyyy hh:mm:ss.fff")
【发布时间】:2012-05-22 20:59:34
【问题描述】:

我将一些 DateTime 存储在 CSV 日志中:

DateTime.Now.ToString("MM/dd/yyyy hh:mm:ss.fff")

当我尝试阅读它时,我发现了类似的内容:

"05/15/2012 10:09:28.650"

问题是当我再次尝试将其转换为 DateTime 时...

DateTime.Parse("05/15/2012 10:09:28.650");

抛出异常“Invalid DateTime”或类似的东西......

如何正确地重新读取 DateTime?

【问题讨论】:

标签: c# .net datetime datetime-format data-conversion


【解决方案1】:

你可以使用DateTime.ParseExact:

string format = "MM/dd/yyyy hh:mm:ss.fff";
DateTime d = DateTime.ParseExact("05/15/2012 10:09:28.650",
                                format,
                                System.Globalization.CultureInfo.InvariantCulture);

Standard Date and Time Format Strings

【讨论】:

    【解决方案2】:

    使用DateTime.ParseExact 指定格式

    String dateStr=DateTime.Now.ToString("MM/dd/yyyy hh:mm:ss.fff");
    DateTime date = DateTime.ParseExact(dateStr,"MM/dd/yyyy hh:mm:ss.fff",System.Globalization.CultureInfo.InvariantCulture);
    

    【讨论】:

    • 你让我的一天在这里是一个 vup
    【解决方案3】:

    您应该使用this 方法来解析您的字符串。您必须创建一个类,实现 IFormatProvider,但如果您想使用自定义 DateTime 格式,这是我能想到的最佳方法。

    【讨论】:

      猜你喜欢
      • 2010-12-29
      • 2016-12-25
      • 1970-01-01
      • 2018-01-08
      • 2016-06-21
      • 1970-01-01
      • 1970-01-01
      • 2023-03-08
      • 1970-01-01
      相关资源
      最近更新 更多