时间精度在 JSON 到数据表转换后降低

本文关键字:转换 数据表 精度 JSON 时间 | 更新日期: 2023-09-27 18:37:16

我正在 ASP.NET 中实现一个网站。我需要将 Json 字符串转换为数据表。我用过Newtonsoft.Json.dll v6.0.8.18111。它给出数据表形式的 Json 字符串。但它会降低转换后 DataTable 中日期时间数据类型字段的准确性。

法典:

string str1 = "[{'"Start_Time'":'"2016-01-21T08:50:16.177'"}]";
System.Data.DataTable dt = Newtonsoft.Json.JsonConvert.DeserializeObject<System.Data.DataTable>(str1);

上面的代码为我提供了Start_Time字段的"21-01-2016 08:50:16"值。但根据需要,我们需要准确的时间,应该是"21-01-2016 08:50:16.177"。

如何从 Json 字符串获取准确的数据表?如果您有更好的解决方案。请提供我。

请帮助我。

时间精度在 JSON 到数据表转换后降低

默认的日期到字符串格式不包括毫秒。您可以尝试例如:

var time = ((DateTime)dt.Rows[0].ItemArray[0]).ToString("o");
//2016-01-21T08:50:16.1770000

查看参考:

  • 标准日期和时间格式字符串

或者使用自定义格式制作确切的日期/时间字符串:

  • 自定义日期和时间格式字符串