今までXMLはREXMLで処理してましたが、今日50MBのXMLファイルの処理に延々と待たされ高速なライブラリを探してみました。ここにあるようにnokogiriやlibxmlを使うとREXMLに比べて50倍以上の高速化が図れそうです。もちろんプログラムは面倒になるでしょうが。
インストールはgemを使って
gem install nokogiri
だけ。
使い方は、例えばここに例があります。
require 'nokogiri'
f = File.open("blossom.xml")
doc = Nokogiri::XML(f)
doc.xpath("//character")
f.close
のような感じ。
これで50MBのXMLファイルに耐えられるかどうかはこれから。
0 件のコメント:
コメントを投稿