Java例外におけるStringWriter/PRintWriterの役割
1469 ワード
Javaではtry.catch(..finally)文を使用して例外をキャプチャおよび処理でき、非常に便利です.catchブロックの一般的な例外処理は、例外をログファイルに出力するなど、例外を出力することです.
ExceptionクラスにはprintStackTrace()メソッドがあり、例外が発生したメソッドからスタック情報を出力できます.デフォルトの出力位置はSystem.errです.ただし、例外が発生した場合にスタック情報をemailに出力したり、ダイアログボックスで表示したりするなど、スタック情報をSystem.err以外の場所に出力する場合があります.
printStackTrace()メソッドには、いくつかの異なるタイプがあります.
・printStackTrace()は、標準エラーフローに出力される.
・printStackTrace(PrintStreams ps)は、psというPrintStreamに出力される.
・printStackTrace(PrintWriter pw)は、pwというPrintWriterに出力される.
スタック情報をStringオブジェクトに保存するには、最後のprintStackTrace()メソッドを使用します.Stringオブジェクトでスタック情報をキャプチャすれば、アプリケーションのどこでも簡単に使用できます.次のコード・スライスは、具体的な実装手順を示しています.
このブログはStringWriter/printWriterから転載され、著者はyuhua 3272004
ExceptionクラスにはprintStackTrace()メソッドがあり、例外が発生したメソッドからスタック情報を出力できます.デフォルトの出力位置はSystem.errです.ただし、例外が発生した場合にスタック情報をemailに出力したり、ダイアログボックスで表示したりするなど、スタック情報をSystem.err以外の場所に出力する場合があります.
printStackTrace()メソッドには、いくつかの異なるタイプがあります.
・printStackTrace()は、標準エラーフローに出力される.
・printStackTrace(PrintStreams ps)は、psというPrintStreamに出力される.
・printStackTrace(PrintWriter pw)は、pwというPrintWriterに出力される.
スタック情報をStringオブジェクトに保存するには、最後のprintStackTrace()メソッドを使用します.Stringオブジェクトでスタック情報をキャプチャすれば、アプリケーションのどこでも簡単に使用できます.次のコード・スライスは、具体的な実装手順を示しています.
private String getStackTraceAsString() {
// StringWriter
StringWriter stringWriter = new StringWriter();
// StringWriter PrintWriter ,
// printStackTrace
PrintWriter printWriter = new PrintWriter(stringWriter);
//
e.printStackTrace(printWriter);
// String, String
StringBuffer error = stringWriter.getBuffer();
return error.toString();
}
このブログはStringWriter/printWriterから転載され、著者はyuhua 3272004