Kotlin Native如何将ByteArray转换为字符串?

Kotlin Native如何将ByteArray转换为字符串?,kotlin,kotlin-interop,kotlin-native,Kotlin,Kotlin Interop,Kotlin Native,我在玩这个游戏。 我想知道如何从pintedByteArray获得String。只想在控制台中打印它。如果您需要JVM的解决方案,因为stringFromUtf8仅适用于本机平台,请与as参数一起使用: val byteArray = "Hello World".toByteArray(Charsets.UTF_8) val str = byteArray.toString(Charsets.UTF_8) 如果您特别希望以本机为目标,请使用。此API似乎已更改 现在只需使用这个:stri

我在玩这个游戏。
我想知道如何从
pinted
ByteArray获得
String
。只想在控制台中打印它。

如果您需要JVM的解决方案,因为
stringFromUtf8
仅适用于本机平台,请与as参数一起使用:

val byteArray = "Hello World".toByteArray(Charsets.UTF_8)   
val str = byteArray.toString(Charsets.UTF_8)
如果您特别希望以本机为目标,请使用。

此API似乎已更改 现在只需使用这个:
string.toUtf8(开始,结束)

旧版本: 使用
stringFromUtf8

/**
 * Converts an UTF-8 array into a [String]. Replaces invalid input sequences with a default character.
 */
fun ByteArray.stringFromUtf8(start: Int = 0, size: Int = this.size) : String =
        stringFromUtf8Impl(start, size)


如果byteArray通过互操作C API而类似于
CPointer
,请在Kotlin Native中使用
.toKString()
,感谢@Willi Mentzel为
stringFromUtf8
的源代码添加了参考。非常感谢。但是我在引用的链接()中找不到
stringFromUtf8
的源代码。此API已被弃用……替换为(“string.toUtf8(start,end)”该数组中用于将字符转换为字节的编码是什么?