2007年10月28日(日)更新 |
■入力したXMLデータをそのままXMLファイルとして出力(sample6.rb)
たけち: 前回までは、入力したXMLデータの要素や属性を見てきたけど、今回は入力XMLデータを元にして、XMLファイルに出力してみよう。 さらら: あっ、はい。 たけち: 今回は、要素などの処理はしないで、入力したXMLデータをそのままXMLファイルとして出力する簡単な例を作ってみるね。 さらら: ということは、入力したXMLファイルと内容が同じXMLファイルを作るのね。 |
■Rubyサンプルプログラム(6) sample6.rbのソースコード
たけち: そうだよ。じゃあ、早速だけど、今回はまずRubyスクリプトの例をみてみよう。XMLファイルを出力する箇所を中心に説明するからね。 さらら: はい。 |
行 | Rubyサンプルプログラム(6) sample6.rb |
---|---|
01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 |
require "rexml/document" |
■処理の概要
さらら: えぇ〜と。。。 たけち: 10行目から17行目で、
のXMLファイルを出力しているんだよ。処理の概要を次の図に載せておくね。 さらら: はい。 |
■REXML::XMLDecl.new
たけち: だいたい分かると思うけど、ここではREXML::XMLDecl.newについて少しだけ詳しくみておくね。 さらら: はい。 たけち: REXML::XMLDecl.newは、次のようなパラメタが指定できるんだ。 |
|
さらら: ここのサンプルプログラムには何もパラメタが書かれていないわよ。 たけち: その場合は、すべてデフォルト値が設定されるんだよ。 さらら: あっ、そうなのね。 |
■サンプルプログラムsample6.rbの実行結果の確認
たけち: じゃ、このsample6.rbを実行した結果をみてみよう。入力ファイルは前に使ったsample4.xmlが必要だよ。コマンドプロンプトウィンドウで
と入力してみて。 さらら: はい。 |
サンプルプログラムsample6.rbの実行 |
さらら: あら、なんにも表示されないわ。 たけち: あっ、それでいいんだよ。プログラムでは特に何もprintfなど、していないからね。実行したフォルダを表示してみると、"out.xml"というファイルができているはずだよ。 さらら: えっ〜、と。。。あっ、ほんとう。 たけち: 内容を見てみよう。 |
出力したXMLデータ out.xml |
---|
<?xml version='1.0'?> |
さらら: あ、入力したXMLファイルと内容がいっしょだわ。 たけち: REXML::Documentの内容は特に変更などしなかったけど、XMLファイルの生成のイメージが少しつかめたかな? さらら: 少し、だけね。 たけち: 次回からは、もっとREXML::Documentの内容に踏み込んでみようね。 さらら: あっ、はい。 たけち: じゃ、今回はここまで。 さらら: は〜い。 → 次回はXMLファイルを生成・出力する sample7.rbです。 (^ ^; |