我有一个XML(假设它是有效的),我必须解析它并将其存储在树中。
什么是解析字符串的最佳方法,而不使用其他库,而只是对字符串的基本操作?
请记住,我不必验证它,只需将其解析并存储到树中即可。
最佳答案
XML的基本结构非常简单:
<tagname [attribute[="value"] ...]>content</tagname>
其中的内容可能同时包含普通文本和更多XML结构或特殊形式
<tagname [attribute[="value"] ...]/>
相当于
<tagname [attribute[="value"] ...]></tagname>
那是,。空内容。
因此,如果您不需要解释DTD或做其他花哨的事情,则可以执行以下操作:
<
。如果没有,则您没有XML,只能给出一个错误然后退出。 /
或>
字符。储存。 /
,请检查其后是否有>
。如果是这样,则说明您已完成解析并可以返回结果。否则,您的XML格式不正确,可能会退出并出现错误。 >
,那么您已经找到了begin标签的结尾。现在遵循的内容。继续执行步骤6。<
字符。 /
,则为结束标记。检查其后是否有标签名称和>
,如果是,则返回结果。否则,抛出错误。