我有一个这样的文件:
+----[ Stream 0 ]
|
| Type: Video
| Codec: H264 - MPEG-4 AVC (part 10) (h264)
| Original ID: 1030
|
+----[ IRIB TV3 [Program 103] ]
|
| Status: Running
| Type: Digital television service
| Now Playing: میان برنامه
| Publisher: IRIB
|
+----[ EPG IRIB TV3 [Program 103] ]
|
| 2014-08-03 14:42:00:Hello
|
+----[ Stream 1 ]
|
| Type: Audio
| Codec: MPEG AAC Audio (mp4a)
| Original ID: 1031
|
+----[ end of stream info ]
此文件的格式是什么,有没有简单的方法将其转换为XML?
答案 0 :(得分:0)
您用于解析此文件的语言取决于您,并取决于您熟悉的内容。很多人会使用Perl,但我会使用XSLT 2.0。
我会从逐行开始:行中有少量不同的模式,我会翻译
+----[ Stream 0 ]
到
<Stream>0</Stream>
和
Status: Running
到
<Status>Running</Status>
这会给你一些XML,第二阶段就是将它转换成有用的XML,你可以使用XSLT 2.0中的分组设备来创建像
这样的东西。<Report>
<Stream nr="0">
<Type>Video</Type>
...
<Program nr="103">
<Status>Running</Status>
...
</Program>
</Stream>
<Stream>...
</Report>
但这里没有灵丹妙药;除非有人已经生成了你可以重复使用的代码,否则你将不得不为这些东西编写一个解析器。