Tôi hiện đang sử dụng lớp Nokogiri :: XML :: Builder để xây dựng một tài liệu XML, sau đó gọi .to_xml trên đó. Chuỗi kết quả luôn chứa một loạt các khoảng trống, các dòng dữ liệu và trả về vận chuyển giữa các nút, và tôi không thể cho cuộc sống của tôi tìm ra cách loại bỏ chúng. Dưới đây là một ví dụ:Nokogiri to_xml không có trả về vận chuyển
b = Nokogiri::XML::Builder.new do |xml|
xml.root do
xml.text("Value")
end
end
b.to_xml
này kết quả trong những điều sau đây:
<?xml version="1.0"?>
<root>Value</root>
Những gì tôi muốn là thế này (chú ý xuống dòng mất tích):
<?xml version="1.0"?><root>Value</root>
Làm thế nào điều này có thể được thực hiện? Cảm ơn trước!
Thật không may là tôi đang mắc kẹt bằng cách sử dụng Nokogiri v1.3.3 mà không cho phép bất kỳ đối số được chuyển đến to_xml. Nếu không, đây sẽ là một giải pháp tuyệt vời. – Cameron
Ah ok, hiểu rồi. Có vẻ như bạn có thể sử dụng phương pháp này bằng cách chuyển các tùy chọn lưu để tuần tự hóa thay vì to_xml: 'b.doc.serialize (: save_with => Nokogiri :: XML :: Node :: SaveOptions :: AS_XML)' – Cameron
Giải pháp cuối cùng của tôi trông như thế này: 'builder.doc.serialize (: save_with => Nokogiri :: XML :: Node :: SaveOptions :: AS_XML) .sub (" \ n "," ") .strip' – Cameron