如何解析我认为是ISO 8601的youtube持续时间格式
此请求
https://www.googleapis.com/youtube/v3/videos?id=Kdgt1ZHkvnM&part=contentDetails&key={API_KEY}
返回
{
"kind": "youtube#videoListResponse",
"etag": "\"QVyS2yjpsZ-tKkk4JvgYeO_YkzY/Do26Zx0a-KfdN4FPvoMAgqiFNRA\"",
"pageInfo": {
"totalResults": 1,
"resultsPerPage": 1
},
"items": [
{
"kind": "youtube#video",
"etag": "\"QVyS2yjpsZ-tKkk4JvgYeO_YkzY/yZ-09PZbpkEHSEcQeekJuGOCbJY\"",
"id": "Kdgt1ZHkvnM",
"contentDetails": {
"duration": "PT20M1S",
"dimension": "2d",
"definition": "hd",
"caption": "false",
"licensedContent": false
}
}
]
}
是否有解析此格式的图书馆" PT20M1S " for .Net?
答案 0 :(得分:15)
是的,YouTube使用ISO 8601持续时间格式,您可以在此处查看Wiki ISO 8601 duration。
所以你需要做的是使用下面的代码(当然是在适当的上下文中,当你解析XML时),但你可以得到这个想法:
TimeSpan youTubeDuration = XmlConvert.ToTimeSpan("PT20M1S");