在Kotlin中取消转义并获取Unicode字符串



我有一个字符串

的文本文件
Here is some Bengali letter : u00E0u00A6u00A6u00E0u00A7u0080

表示字符串

Here is some Bengali letter : দী

我对这里的编码/解码非常困惑。我已经尝试过通过获取字节数组来转换字符串,我已经尝试过在这里的一些帖子中建议的StringEscapeUtils !但它们都产生了乱码。

我最好的猜测是Unicode部分">

%E0%A6%A6%E0%A7%80

然后转换成字符串

u00E0u00A6u00A6u00E0u00A7u0080

所以我的问题是如何读取文件并在Kotlin中获得所需的字符串?

(回答结束问题)

根据@tripleee的建议,这个问题通过将字符串编码为Latin-1然后解码为UTF-8来解决。

这是Kotlin中的MWE

val originalStr = "Here is some Bengali letter : u00E0u00A6u00A6u00E0u00A7u0080"
val str = String(originalStr.toByteArray(Charsets.ISO_8859_1))
println(str)
Output> Here is some Bengali letter : দী 

最新更新