Avatar ·

Cómo convertir StackTrace (pila de llamadas) a String en Java

¡Hola a todos! Soy un desarrollador Java principiante y tuve un problema al trabajar con excepciones. Necesito registrar errores en un archivo de texto, pero el método estándar printStackTrace() solo imprime la pila de llamadas en la consola (System.err). Quiero obtener la pila de llamadas completa como una cadena para guardarla en un archivo, enviarla por correo electrónico o simplemente mostrarla en un archivo de log. Aquí hay un ejemplo de mi código: ```java try { // algún código que puede lanzar una excepción int result = 10 / 0; } catch (Exception e) { // aquí necesito obtener la pila de llamadas como una cadena e.printStackTrace(); // esto solo imprime en la consola // y yo quiero algo como: // String stackTraceString = convertStackTraceToString(e); // System.out.println(stackTraceString); // o escribir en un archivo } ``` Intenté usar e.getMessage() — pero solo devuelve un mensaje corto ("/ by zero"), mientras que necesito la pila de llamadas completa (todas las líneas como "at com.example.MyClass.myMethod(MyClass.java:15").