【初心者】Java質問・相談スレ20【大歓迎】
■ このスレッドは過去ログ倉庫に格納されています
0564デフォルトの名無しさん
NGNG僕のやりたいことは
1.文字コードを指定して
2.ファイルに追加書き込み
をやりたいんですが
エンコード指定のためにはjava.io.OutputStreamWriterのコンストラクタで
指定します(setEncoding()などのメソッドは無い)
また、追加書き込みの指定はjava.io.FileWriterのコンストラクタで指定します
(こっちも、書き込み方法を指定するメソッドは無い)
この2つのクラスは継承関係にあるんですが
どうやってこの二つのコンストラクタを呼んで
「指定したエンコーディング」で「追加書き込み」のできるFileWriterオブジェクトを
得ることが出来るのかわかりません
単純にFileWriter.super(OutputStream out,String enc)としても
superはコンストラクタの先頭で無いと駄目といわれます(あたりまえですが)
なので、自分でOutputStreamWriterを継承したクラスをつくってソコで呼び出そうとするんですが
そうなると、FileWriterクラスと同機能のクラスも自作しないといけなくなり
(追加書き込み機能をつかうのでどうしてもFileWriterクラス出ないと駄目)
また、FileWriterクラスを継承したクラスを作っても
superで呼び出されるのはFileWriterのコンストラクタだけで
2つのクラスの距離は平行線のままです
どうすりゃいいんでしょうかね?
(C++はやったこと無いので勘で言いますけど多重継承が可能なら出来るのかな?)
■ このスレッドは過去ログ倉庫に格納されています