解決しました。超初歩的なミスをしておりました。
String(byte[] bytes, int offset, int length) は
これはデフォルトエンコーディングを使うということで
String(byte[] bytes, int offset, int length, String enc)で万事解決しました。

昔はtomcatの起動時に引数を与えてやることによって
デフォルトエンコーディングを指定できたようですが、
現在は無視され、反映されないと聞きました。
みなさん、デフォルトエンコーディングはどのように指定されていますか?

ちなみに、私の環境のデフォルトはgetPropertyで見たところ646と出力されasciiでした。


>>182
こんなページはどうでしょう?
http://support.softartisans.com/docs/safileupdocs/japanese/Documentation/prog_g_clientrestrictfile.htm