У цій програмі ви навчитеся перетворювати трасування стека в рядок на Java.
Щоб зрозуміти цей приклад, ви повинні знати такі теми програмування Java:
- Рядок Java
- Обробка винятків 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()
методу.