2011年3月24日木曜日

Rhinoでテキストファイル出力

Rhinoでファイル出力をするときは、javaのクラスを使います。 javaのクラスの使い方はRhinoのオフィシャルサイトの説明の通りです。 javaで書くときと同じようなコードになります。 簡単なコードですが、実際にファイル出力をするサンプルがネットで見つからなかったので書いてみました。

var file_name = "dummy_dir";
var out;
try
{
    out = new java.io.PrintWriter(file_name);
    out.println("test 日本語");
}
catch(exc)
{
    print('ファイル出力エラー');
}
finally
{
    if(out != null)
    {
        out.close();
    }
}

file_nameがdummy_dirになっているのは例外のcatchを確認するためです。 「普通に出力」と「あらかじめディレクトリdummy_dirを作って実行 → ファイル作成失敗 → 例外発生を確認」の両方をやってみました。 どちらも普通に処理されました。

PrintWriterのcloseは例外発生の可能性があります。 javaだとcloseもtry~catchで囲む必要アリ。 ですがまぁ、「javascriptでコードを書く場合は雑になるのが普通だろう」ってことでこのコードでは割愛しました。