В тази програма ще се научите да конвертирате проследяване на стека в низ в Java.
За да разберете този пример, трябва да имате познанията по следните теми за програмиране на Java:
- Java String
- Обработка на изключения в Java
Пример: Преобразуване на стека на стека в низ
import java.io.PrintWriter; import java.io.StringWriter; public class PrintStackTrace ( public static void main(String() args) ( try ( int division = 0 / 0; ) catch (ArithmeticException e) ( StringWriter sw = new StringWriter(); e.printStackTrace(new PrintWriter(sw)); String exceptionAsString = sw.toString(); System.out.println(exceptionAsString); ) ) )
Изход
java.lang.ArithmeticException: / по нула при PrintStackTrace.main (PrintStackTrace.java:9)
В горната програма принудихме нашата програма да хвърли, ArithmeticException
като делим 0 на 0.
В catch
блока използваме StringWriter
и, за PrintWriter
да отпечатаме всеки даден изход в низ. След това отпечатваме стека на стека, използвайки printStackTrace()
метода на изключението и го записваме в писателя.
След това просто го преобразуваме в низ с помощта на toString()
метод.