Ruby 1.9.3 リファレンスマニュアル > ライブラリ一覧 > rexml/documentライブラリ > REXML::Documentクラス > write

instance method REXML::Document#write

write(output = $stdout, indent = -1, transitive = false, ie_hack = false) -> ()[permalink][rdoc]

output に XML 文書を出力します。

XML宣言、DTD、処理命令を(もしあるならば)含む文書を出力します。

注意すべき点として、 元の XML 文書が XML宣言を含んでいなくとも 出力される XML はデフォルトの XML 宣言を含んでいるべきであるが、 REXML は明示しない限り(つまりXML宣言を REXML::Document#add で 追加しない限り) それをしない、ということである。XML-RPCのような利用法では ネットワークバンドを少しでも節約する必要があるためである。

[PARAM] output:
出力先(IO のように << で書き込めるオブジェクト)
[PARAM] indent:
インデントのスペースの数(-1 だとインデントしない)
[PARAM] transitive:
XMLではインデントのスペースでDOMが変化してしまう場合がある。 これに真を渡すと、XMLのDOMに余計な要素が加わらないように 空白の出力を適当に抑制するようになる
[PARAM] ie_hack:
IEはバージョンによってはXMLをちゃんと解釈できないので、 それに対応したXMLを出力するかどうかを真偽値で指定する