का उपयोग कर एक्सएमएल नोड सामग्री को प्रतिस्थापित करने के लिए मैं एक XML दस्तावेज़ को पढ़ने के लिए रूबी का उपयोग कर रहा हूं और एक नया मान के साथ, यदि यह मौजूद है, तो एक नोड अपडेट करें।नोकोगिरी
http://www.nokogiri.org/tutorials/modifying_an_html_xml_document.html मुझे स्पष्ट नहीं है कि नोड डेटा को कैसे बदला जाए, इसे अकेले फ़ाइल में कैसे सहेजना है।
<?xml version="1.0" encoding="utf-8">
<my_id>123</my_id>
<Route>
<To>
<Node>
<Filename>file1.txt</Filename>
<Filename>file2.mp3</Filename>
<Filename>file3.doc</Filename>
<Filename>file4.php</Filename>
<Filename>file5.jpg</Filename>
</Node>
</To>
</Route>
</xml>
मैं "file3.doc" से "file3_new.html" बदलना चाहते हैं:
def ammend_parent_xml(folder, target_file, new_file)
# open parent XML file that contains file reference
get_xml_files = Dir.glob("#{@target_folder}/#{folder}/*.xml").sort.select {|f| !File.directory? f}
get_xml_files.each { |xml|
f = File.open(xml)
# Use Nokgiri to read the file into an XML object
doc = Nokogiri::XML(f)
filename = doc.xpath('//Route//To//Node//FileName')
filename.each_with_index {
|fl, i|
if target_file == fl.text
# we found the file, now rename it to new_file
# ???????
end
}
}
end
यह कुछ उदाहरण एक्सएमएल है।
मैं कहेंगे:
def ammend_parent_xml("folder_location", "file3.doc", "file3_new.html")
ओएमजी को कुछ और जानकारी जोड़ा, सोमवार को काम करने का एक शानदार तरीका .. यह बहुत अच्छा है और अब मैं नोकोगिरी कैसे काम करता हूं इस पर थोड़ा और अधिक उलझन में हूं !! (और मुझे पता है कि अब संशोधन कैसे करें: पी) – Beertastic