現在、Nokogiri :: XML :: Builderクラスを使用してXMLドキュメントを構築し、その上に.to_xmlを呼び出しています。結果として得られる文字列には、ノードの間にスペース、改行、キャリッジリターンが常に含まれています。私の人生にとっては、それらを取り除く方法を理解できません。ここでは例です:Nokogiri to_xmlキャリッジリターンなし
b = Nokogiri::XML::Builder.new do |xml|
xml.root do
xml.text("Value")
end
end
b.to_xml
これは、次のような結果になります。私が欲しいもの
<?xml version="1.0"?>
<root>Value</root>
は(行方不明改行を注意)これです:
<?xml version="1.0"?><root>Value</root>
はどのようにこれを行うことができますか?前もって感謝します!
残念ながら、私はNokogiri v1.3.3を使用して立ち往生していますが、to_xmlに引数を渡すことはできません。さもなければ、これはすばらしい解決策になります。 – Cameron
ああ、それを持っています。あなたはto_xmlの代わりに保存オプションを渡すことでこのメソッドを使うことができるようです: 'b.doc.serialize(:save_with => Nokogiri :: XML :: Node :: SaveOptions :: AS_XML)' – Cameron
私の最終的な解決策次のようになります。 'builder.doc.serialize(:save_with => Nokogiri :: XML :: Node :: SaveOptions :: AS_XML).sub(" \ n "、" ").strip' – Cameron