Tässä ohjelmassa opit muuntamaan pinon jäljen merkkijonoksi Kotlinissa.
Esimerkki: Muunna pinon jäljitys merkkijonoksi
import java.io.PrintWriter import java.io.StringWriter fun main(args: Array) ( try ( val division = 0 / 0 ) catch (e: ArithmeticException) ( val sw = StringWriter() e.printStackTrace(PrintWriter(sw)) val exceptionAsString = sw.toString() println(exceptionAsString) ) )
Kun suoritat ohjelmaa, tulos on jotain vastaavaa:
java.lang.ArithmeticException: / nollalla StacktraceKt.mainissa (stacktrace.kt: 7)
Edellä olevassa ohjelmassa olemme pakottaneet ohjelmamme heittämään ArithmeticException
jakamalla 0 0: lla.
Vuonna catch
lohko, käytämme StringWriter
sekä PrintWriter
tulostaa tahansa lähtö merkkijono. Tulostamme sitten pinon jäljen printStackTrace()
poikkeuksen menetelmällä ja kirjoitamme sen kirjoittajaan.
Sitten muunnamme sen yksinkertaisesti merkkijonoksi toString()
menetelmällä.
Tässä on vastaava Java-koodi: Java-ohjelma pinon jäljityksen muuntamiseksi merkkijonoksi.