XML / Json采用方括号格式

时间:2013-09-23 12:27:08

标签: c# xml json api parsing

我正在研究使用TVRage Api,显示信息搜索API以标准XML格式返回。

  

http://services.tvrage.com/feeds/search.php?show=buffy

但是,Schedule“API”以奇怪的Square-Bracket格式返回。它看起来像XML,但不像标准XML那样封装元素。

  

http://services.tvrage.com/tools/quickschedule.php

例如,在XML中,您可以期待以下内容:

<Day>
  <Date>Monday, 23 Sep 2013</Date>
  <Time>05:00pm</Time>
  <Show>MBC Sports Tonight</Show>
</Day>

但它会以下列格式返回:

[DAY]Monday, 23 Sep 2013[/DAY]
[TIME]05:00 pm[/TIME]
[SHOW]NBC Sports Tonight[/SHOW]
[TIME]05:30 pm[/TIME]
[SHOW]Pro Football Talk[/SHOW]
[DAY]Monday, 24 Sep 2013[/DAY]
[TIME]06:00 pm[/TIME]
[SHOW]NBC Sports Tomorrow[/SHOW]

有没有人知道这种格式是什么,以及是否有一种标准方法可以将其转换为C#中的对象,或者我是否需要创建自己的解析器来处理它。

看起来很奇怪他们会在标准XML中使用他们的搜索源,并且他们的日程安排不是标准格式。

所以如果有人能在这个输出上给我启发,我会非常感激。

干杯, 克里斯

1 个答案:

答案 0 :(得分:2)

我想回答这个问题。

我创建了一个漂亮的字符串扩展,它接受了带有[]格式的字符串,并在自定义创建的,结构良好的XML文档中返回了一个包含结果的字符串。

然后我创建了一个C#类,它模仿了我刚刚创建的结构。

我创建了另一个字符串扩展,它接受了XML并返回了一个匹配的强类型对象(我创建的C#类)。

然后我又在TVRage网站上看了一遍,因为我想知道我可以用这个名称来调用哪些参数。

...

然后我注意到这个“Schedule”API旁边有一个“FULL Schedule”链接......这与我正在使用的Schedule链接相同,除了已经是XML格式。

<强>卫生署

如果有人和我一样愚蠢,请找到要使用的正确网址:

  

http://services.tvrage.com/feeds/fullschedule.php

祝你有个美好的一天, 克里斯