当前位置: 技术问答>java相关
怎样把e.printStackTrace()这个异常保存到一个字符串变量中如:String str;
来源: 互联网 发布时间:2015-11-03
本文导语: 怎样把e.printStackTrace()这个异常保存到一个字符串变量中如:String str; | import java.io.*; public class Ping { public static void main(String[] args) { String command="pig www.sohu.com"; ...
怎样把e.printStackTrace()这个异常保存到一个字符串变量中如:String str;
|
import java.io.*;
public class Ping {
public static void main(String[] args) {
String command="pig www.sohu.com";
StringWriter sw = new StringWriter();
try {
Process child=Runtime.getRuntime().exec(command);
child.waitFor();
System.out.println(child.exitValue());
} catch ( InterruptedException ie ) {
System.out.println( ie );
ie.printStackTrace(new PrintWriter(sw));
} catch (IOException ioe) {
System.out.println( ioe );
ioe.printStackTrace(new PrintWriter(sw));
}
System.out.println(sw);
}
}
sw.toString()就是你要的String
public class Ping {
public static void main(String[] args) {
String command="pig www.sohu.com";
StringWriter sw = new StringWriter();
try {
Process child=Runtime.getRuntime().exec(command);
child.waitFor();
System.out.println(child.exitValue());
} catch ( InterruptedException ie ) {
System.out.println( ie );
ie.printStackTrace(new PrintWriter(sw));
} catch (IOException ioe) {
System.out.println( ioe );
ioe.printStackTrace(new PrintWriter(sw));
}
System.out.println(sw);
}
}
sw.toString()就是你要的String
|
e.toString() or e.getMessage()
|
e.printStackTrace是定向到err的输出中,如果你要e的信息直接e.toString就可以了
|
把这个保存到你的字符串中就可以了
e.toString()
e.toString()
|
arefe说的是最全面的,如果用e.toString,信息不全面,不能知道错误的具体行数。
StringWriter sw=new StringWriter();
………
………
e.printStackTrace(new PrintWriter(sw,true));
String str=sw.toString;
//str中就是详细的错误信息。
StringWriter sw=new StringWriter();
………
………
e.printStackTrace(new PrintWriter(sw,true));
String str=sw.toString;
//str中就是详细的错误信息。