> 遅まきながらJDOMを使い始めました。使いやすいです。
> …が、ファイルに書き出そうとして、
> ---
> Document doc = new Document(root);
> XMLOutputter out = new XMLOutputter("  ", true, "UTF-8");
> File f = new File("test.xml");
> FileWriter writer = new FileWriter(f);
> out.output(doc, writer);
> ---
> としてencodingにUTF-8を指定しても<?xml version="1.0" encoding="UTF-8"?>とは
> なるものの肝心の文字コードがUTF-8になっていないようです。

ソースを確認すると、
XMLOutputter  のコンストラクタでエンコーディング指定を渡しているのなら,
OutputStreamを渡すと、内部でWriterでくるんでくれるようです。

バッファのフラッシュのタイミングを気にしない(GCに任せる)のなら次の記述でOKです。

out.output(doc, new java.io.FileOutputStream(f));