노코 기리의 noblanks 사용 방법 :내가 XML 문서가
<?xml version="1.0"?>
<installation id="ayfw-a">
</installation>
내가 같이이 문서에 자식 노드를 추가하고 :
data = Nokogiri::XML(IO.read('file')) { |doc| doc.noblanks }
new_record = Nokogiri::XML::Node.new('tag', data)
data.root.add_child(new_record)
File.open('file', 'w') { |dh_file| dh_file.write(data.to_xml(:indent => 4)) }
을 내 파일 내에서이 얻을이 코드를 :
<?xml version="1.0"?>
<installation id="ayfw-a">
<tag/></installation>
여기서 noblanks
은 작동하지 않습니다. 하지만, 내 파일이 이미 자식 노드를 가지고 새로운 노드를 noblanks
삽입하면 잘 작동하기 전에 경우 : 그래서
<?xml version="1.0"?>
<installation id="ayfw-a">
<!---->
<tag/>
</installation>
: 새로운 노드를 삽입 한 후
<?xml version="1.0"?>
<installation id="ayfw-a">
<!---->
</installation>
: 새로운 노드를 삽입하기 전에
noblanks
은 이미 "패턴"이 표시된 경우에만 작동합니다. 아직 XML이없는 경우 XML을 올바르게 들여 쓸 수있는 방법이 있습니까?
아마도 noblanks
이 사용할 수있는 권한 옵션이 아니라 이미 <installation>
에서 일부 노드가있는 경우 어떤 이유로 작동합니다. 기본적으로 자식 노드를 추가하는 것은이 때 내가 현재 가지고있는 :
<?xml version="1.0"?>
<installation id="ayfw-a">
<tag/></installation>
은 내가이 있어야하는 것은 이것이다 :
이<?xml version="1.0"?>
<installation id="ayfw-a">
<tag/>
</installation>
그리고 추가 자식 노드가 어떤 속성을 가진, 비어 있어야하는 I 단순화를 위해 억압된다.
나는 당신의 노력을 좋아합니다. :)) –
@Babai, Thanks! – 7stud