API返回日期的麻烦



首先,我是新手级别的程序员,如果不清楚,我深表歉意。我击中的API正在返回" CreateDate:20190216T070519.000Z"或" Endtime:20190217T190847.181Z",我不知道如何将其转换为DateTime。

这被返回为字符串,我得到

字符串未被认为是有效的DateTime。

我尝试了这样的事情,但是我无法了解源格式或此.000Z代表什么,我怀疑它是一个时区。

DateTime.ParseExact(createdDate, "yyyyMMddpHHmmss.fffZ",CultureInfo.InvariantCulture);

还这样认为它会有所帮助,但不确定该如何处理createdDate.Substring(16, 3)部分。

MessageBox.Show(createdDate.Substring(0, 8) +" @ "+ createdDate.Substring(9, 6) + " @ " + createdDate.Substring(16, 3));

只是看着它,它可能是%Y%m%dT%H%M%S.%fZ的Python格式,但不确定,因为我不熟悉Python,但是在线搜索的一些搜索使我认为它很近。似乎这是时区,也许是与UTC之类的差异。我不希望我的程序有错误的日期时间信息,因此,如果有人可以帮助我弄清楚这真是太棒了。

z表示UTC。如果除了UTC以外的时区,通常将其指定为偏移-600或沿这些行

至于您的日期,您接近:

DateTime.ParseExact(createdDate,"yyyyMMddTHHmmss.fffK",CultureInfo.InvariantCulture)

c#使用k代表"种类",可以是UTC或本地或不确定的

有些人是棍子,会说您需要将t放在单个引号" t"中,

DateTime.ParseExact(createdDate,"yyyyMMdd'T'HHmmss.fffK",CultureInfo.InvariantCulture)

但是说实话,我发现这很困惑...

相关内容

  • 没有找到相关文章

最新更新