将异常(getStackTrace)转化成String

方法一:

private static String getStackMsg(Exception e) {

        StringBuffer sb = new StringBuffer();
        StackTraceElement[] stackArray = e.getStackTrace();
        for (int i = 0; i < stackArray.length; i++) {
            StackTraceElement element = stackArray[i];
            sb.append(element.toString() + "\n");
        }
        return sb.toString();
    }

    private static String getStackMsg(Throwable e) {

        StringBuffer sb = new StringBuffer();
        StackTraceElement[] stackArray = e.getStackTrace();
        for (int i = 0; i < stackArray.length; i++) {
            StackTraceElement element = stackArray[i];
            sb.append(element.toString() + "\n");
        }
        return sb.toString();
    }

方法二:

package com.test1;

import java.io.PrintWriter;
import java.io.StringWriter;

public class T010 {

    /**
     * @param args
     */
    public static void main(String[] args) {
        try {
            String[] arr = {"111", "222"};
            arr[2] = "fff";
        } catch (Exception e) {
            String info = getErrorInfoFromException(e);
            System.out.println(info);
        }
    }

    public static String getErrorInfoFromException(Exception e) {
        try {
            StringWriter sw = new StringWriter();
            PrintWriter pw = new PrintWriter(sw);
            e.printStackTrace(pw);
            return "\r\n" + sw.toString() + "\r\n";
        } catch (Exception e2) {
            return "bad getErrorInfoFromException";
        }
    }
}
 
时间: 2025-01-06 00:08:20

将异常(getStackTrace)转化成String的相关文章

List&lt;String&gt;转化成String

项目中很多时候需要对List<String>转化成String类型.参考代码如下: List<String> stringList = new ArrayList<String>(); stringList = loginEntryServiceRest.loginentry(language);//通过函数调用得到List<String>的对象 StringBuilder result=new StringBuilder();//新建一个StringBui

Java异常堆栈信息转String

平时使用e.getMessage()或e.printStackTrace(); 第一种报异常时要throw new RuntimeException("异常"),只能得到异常2字. 第二种e.printStackTrace();只是打印,不返回任何数据. 而服务器一般是集群或其他方式部署,查看日志的话太麻烦,可以吧堆栈信息转成String等类型,然后进行保存到数据库.放在页面隐藏域中方便查看. 介绍3种方法供选择: 方法一: package name.xu;public class C

java将int类型的变量转化成String类型的

第一种方法:String的valueOf方法,int i=5;String s=String.valueOf(i);第二种方法,直接在int后面加一个空的字符串,因为在java里面,默认任务int类型和字符串类型相加,为字符串类型.int i=6:String s=i+"";3第三种:使用int的封装类Integer,在Integer里面用他的toString方法.int i=7:String s=Integer.toString(i);

利用Gson将一个对象转化成String

今天在弄版本更新的重构,居然遇到这么一个问题,差点没有单独写一个方法获取字符串,多亏Gson!      很简单,两句话:      其中entity是自己定义的一个类的对象 <strong> Gson gson = new Gson(); String entityToStr = gson.toJson(entity);</strong>

zip格式转化成String

</pre><pre name="code" class="java"><pre name="code" class="java"><pre name="code" class="java">public static StringBuffer readZipFile(File file) throws Exception { String

double类型转化成string

public static void main(String[] args) { double priceWithFreight = 1200.5698d; System.out.println(priceWithFreight); //double转string 超过1000小数点会变成逗号的bug, 不要用这个方法 NumberFormat nf = NumberFormat.getInstance(); nf.setRoundingMode(RoundingMode.HALF_UP);//

将DataSet转化成XML格式的String类型,再转化回来。

/// <summary> /// 获取DataSet的Xml格式 /// </summary> public static string GetDataSetXml(this DataSet dataSet) { string str = string.Empty; str += "<NewDataSet>"; for (int k = 0; k < dataSet.Tables.Count; k++) { for (int i = 0; i

使用String获取java异常中的异常内容

因为Exception类是所有异常的父类,所以使用它可以读取到java产生的所有异常:     /**      * @category 获取try-catch中的异常内容      * @param e Exception      * @return  异常内容      */     public static String getException(Exception e) {         ByteArrayOutputStream out = new ByteArrayOutput

JAVA将异常的堆栈信息转成String

有时候我们需要将系统出现异常的堆栈信息显示到异常页面的一个隐藏的DIV内,这样查看源时就可以快速的定位到异常信息.这个时候就要将异常信息转成String. /* * 将异常的堆栈信息转成String */ public static String getExceptionStack(Throwable throwable) { StringWriter sw = new StringWriter(); PrintWriter pw = new PrintWriter(sw); throwable