
次のようなクラスを作成したのですが、表題のようなエラーが出てしまいます。
PrintWriterクラスのcloseメソッドは、
Closableインターフェースのcloseと
witerクラスのcloseと同じ定義だと考えていたので、きっとIOExceptionが発生すると考えていたのですが・・・違うのでしょうか?
Finallyの中にtryを書くと何か問題が起こるのでしょうか?
ソースをそのまま書くのは気が引けるのですが、どうか教えて頂けないでしょうか?
/**
* ファイルに文字を書き込むクラス
*/
class Sample
{
PrintWriter writer; //書き込むためのクラス
public void writerTest()
{
try
{
//** テストファイルに書き込み */
writer = new PrintWriter(new BufferedWriter(new OutputStreamWriter(new FileOutputStream("sample.txt",false),"EUC-JP")));
//書き込みを行います
writer.println("A");
writer.flush();
}
catch(IOException ioe)
{
System.out.println(ioe.getMessage());
}
finally
{
try
{
writer.close();
}
catch(IOException ioe) //このcatchでエラーが発生します。
{
System.out.println(ioe.getMessage());
}
}
}
}
No.1ベストアンサー
- 回答日時:
こんばんは。
PrintWriterクラスのclose()メソッドはIOExceptionをスローしません。
APIガイドを調べるのが一番の近道かと思います。
Writerクラスのclose()抽象メソッドの実装ですが、例外は無視してるみたいですね。
> Finallyの中にtryを書くと何か問題が起こるのでしょうか?
問題ありません。正しいクローズ処理です。
参考URL:http://java.sun.com/j2se/1.4/ja/docs/ja/api/java …
お返事が送れてごめんなさい。
ソースまで確認して、やっと納得がいきました。
少しはJavaの調べ方が解ってきたと思います。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excel vbaのプログラムでガンマ...
-
Javaのインスタンス化の構文の...
-
デバッグ時に「Source not found」
-
オーバーライドとラッパーの違い
-
あるクラスであるかどうかを確...
-
(vba)他のアプリケーションの右...
-
中学のクラス数
-
VB.NETでのnothing の意義について
-
Dispose()は、どんな時に使うの...
-
ヒグマを撃退
-
0歳児の指しゃぶりに関して
-
「タイプ初期化子が例外をスロ...
-
そんなにお金がなくても年に1度...
-
java 次の機能を有するメソッド...
-
パワーポイントのVBAでテキスト...
-
複数のクラスで共通した関数を...
-
質問すいません。 javascriptの...
-
プログラミング Java
-
次の日本語の意味を教えて下さい
-
Pythonのデータ型
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
interface,extend,implementの...
-
(vba)他のアプリケーションの右...
-
「継承されたメソッドの可視性...
-
C# 「データが失なわれる可能性...
-
JTextFieldの入力制限
-
ASP.NETでの共通コードの書き方...
-
VB DLLプロジェクトについて
-
オーバーライドとラッパーの違い
-
抽象クラスをJUNITでテストする...
-
ゲッターを使わないで変数にア...
-
【C#】クラスのコンストラクタ...
-
メソッドの引数にクラス名を渡す
-
C#からDLLを呼びたいのですが・...
-
Commons-Discovery.jarとは?
-
c++でのヘッダーファイルの循環...
-
デバックログの出し方
-
Javaのインスタンス化の構文の...
-
委譲って何ですか?
-
ファイルパスが取得出来ない(P...
-
「ラッパークラス」の存在意義...
おすすめ情報