kotlin 如何在将符号写入文件时将其保存为XML中的可读符号?

pu82cl6c  于 2022-12-23  发布在  Kotlin
关注(0)|答案(1)|浏览(123)

我保存在我的Android应用程序的XML文件。当我写它,我使用这种方法:

context.contentResolver.openOutputStream(source, "w")?.bufferedWriter()?.use { stream ->
    val xmlString = Xml.newSerializer().document {
        // some xml things
    }
    stream.write(xmlString)
}

这是工作文件。
但是,当我保存cyryllic符号,并试图在阅读器应用程序中打开此文件时,我看到十进制HTML代码。П而不是П。我得到的建议是,我需要保存西里尔符号直接使用它的UTF-8值。你能帮助我吗?

esyap4oy

esyap4oy1#

你可以在这里找到正式的Kotlin文档https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.io/java.io.-file/buffered-writer.html

context.contentResolver.openOutputStream(source, "w")?.bufferedWriter(
    charset: Charset = Charsets.UTF_8)?.use { stream ->
    val xmlString = Xml.newSerializer().document {
        // some xml things
    }
    stream.write(xmlString)
}

此外,您还需要使用指定的相同编码在阅读器应用程序中打开此文件。

相关问题