2013-12-24 5 views
0

Что является самым простым способом конвертировать java.lang.Thread.getStackTrace() в строку?Трассировка стека строк в строку

Существует множество методов преобразования Throwable в строку, но мне нужно получить трассировку стека определенного объекта потока.

ответ

2

Вы можете сделать это

StringBuilder sb = new StringBuilder(); 
for(StackTraceElement ste: Thread.getStackTrace()) 
    sb.append("\tat ").append(ste).append("\n"); 
String trace = sb.toString(); 
0

Apache Commons предоставляет утилиты исключения для оказания помощи такого рода проблемы. Среди этих утилит - метод, который принимает объект Throwable и возвращает строку. Вы должны создать объект Throwable в своем потоке, передать его этой функции и использовать при необходимости возврат.

Метод, который я имею в виду, можно найти здесь: Apache Commons Exception Utilities - getStackTrace

Смежные вопросы