我正在努力使用xml-simple(1.1.5)gem。 这是我在test.xml中的输入:
<bib>
<title><br/>X</title>
<title>X<br/>X</title>
<title>X<br/></title>
</bib>
现在看看使用irb会发生什么,如下所示:
$ irb -rxmlsimple -rpp
>> pp XmlSimple.xml_in("test.xml")
{"title"=>
[{"br"=>[{}], "content"=>"X"},
{"br"=>[{}], "content"=>["X", "X"]},
{"br"=>[{}], "content"=>"X"}]}
=> {"title"=>[{"br"=>[{}], "content"=>"X"}, {"br"=>[{}], "content"=>["X", "X"]}, {"br"=
>>
显然,第一个和最后一个记录虽然不同,但在输出中给出相同的哈希值 这是一个错误吗?
答案 0 :(得分:1)
xml-simple gem对混合内容无法可靠地工作。以下是其文档摘录:
混合内容(包含文本内容和嵌套元素的元素)将不会以有用的方式表示 - 元素顺序和重要的空白将丢失。如果您需要处理混合内容,那么XmlSimple不适合您的工作。