【问题标题】:DateTime ToString() and TryParse()日期时间 ToString() 和 TryParse()
【发布时间】:2011-07-25 11:26:13
【问题描述】:

一开始我会这样做:

string stringDate = date.ToString(invariantCultureInfo);

然后:

DateTime.TryParse(stringDate, out date);

它返回false。你有什么想法吗?

【问题讨论】:

  • stringDate 包含什么?
  • date.ToString 的结果。见编辑
  • @DotNET Ninja,您不是在尝试使用 InvariantCulture 进行解析 - 您是在尝试使用您当前的文化,这可能是问题所在。
  • 正如@Jackson Pope 所说,如果您没有将您使用的格式字符串作为第三个参数传递:invariantCultureInfo TryParse 方法尝试使用您当前的文化或尝试发现解析格式。您将使用相同的格式获得真实结果:invariantCulturInfo for TryParse

标签: .net parsing datetime tostring


【解决方案1】:

试试这个:

DateTime.TryParse(stringDate, CultureInfo.InvariantCulture, DateTimeStyles.None, out date);

【讨论】:

    【解决方案2】:

    InvariantCulture 对我不起作用。我从 SQL Server 数据库中获取了一个DateTime,并使用DateTime 对象的ToString() 方法将其转换为字符串。然后我在同一个字符串上尝试了DateTime.TryParse(),但它失败了。进一步的测试表明,TryParse() 失败是因为ToString() 在日期元素和时间元素之间插入了连字符。

    【讨论】:

      猜你喜欢
      • 2012-08-09
      • 2019-09-22
      • 2011-09-29
      • 1970-01-01
      • 2021-06-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-11-10
      相关资源
      最近更新 更多