无法将Google的ISO 8601格式的给定持续时间转换为C#TimeSpan

时间:2019-06-25 08:53:14

标签: c# unity3d duration iso8601

我从Google获得“ introductoryPricePeriod”的数据。我在游戏中使用UnityPurchasing模块。 “ introductoryPricePeriod”持续时间显示为“ P12W6D”,表示12周6天。它是ISO 8601格式。我无法将其解析为C#中的TimeSpan enter image description here

我已经尝试过但不起作用的是:

System.Xml.XmlConvert.ToTimeSpan("P12W6D");

我阅读了ISO 8601格式的维基百科页面,其中说该格式只能是“ PnYnMnDTnHnMnS”形式。数周没有包含“ W”关键字。它包含另一个关键字“ PnW”,但仅持续数周。 Google发送给我的格式不正确吗? Google应该将“ P12W6D”作为“ P3M6D”发送给我吗?因为我测试了它并且“ P3M6D”有效。它可以轻松转换为96.00:00:00 Timespan。唯一的问题是关键字“ W”。

0 个答案:

没有答案