Trong chương trình này, bạn sẽ học cách chuyển đổi một dấu vết ngăn xếp thành một chuỗi trong Kotlin.
Ví dụ: Chuyển đổi dấu vết ngăn xếp thành một chuỗi
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) ) )
Khi bạn chạy chương trình, kết quả sẽ tương tự như sau:
java.lang.ArithmeticException: / bằng 0 tại StacktraceKt.main (stacktrace.kt: 7)
Trong chương trình trên, chúng tôi đã buộc chương trình của chúng tôi ném ArithmeticException
bằng cách chia 0 cho 0.
Trong catch
khối, chúng tôi sử dụng StringWriter
và PrintWriter
in bất kỳ đầu ra đã cho nào thành một chuỗi. Sau đó, chúng tôi in dấu vết ngăn xếp bằng cách sử dụng printStackTrace()
phương thức của ngoại lệ và ghi nó vào trình viết.
Sau đó, chúng tôi chỉ cần chuyển đổi nó thành chuỗi bằng toString()
phương thức.
Đây là mã Java tương đương: Chương trình Java để chuyển đổi một dấu vết ngăn xếp thành một chuỗi.