我有一个带有转义 Unicode 字符的字符串 \uXXXX
,我想将其转换为常规的 Unicode 字母。例如:
"\u0048\u0065\u006C\u006C\u006F World"
应该成为
"Hello World"
我知道当我打印第一个字符串时,它已经显示 Hello world
。我的问题是我从文件中读取文件名,然后搜索它们。文件中的文件名使用 Unicode 编码进行转义,当我搜索文件时,我找不到它们,因为它搜索名称中包含 \uXXXX
的文件。
原文由 SharonBL 发布,翻译遵循 CC BY-SA 4.0 许可协议
技术上做:
自动将其转换为
"Hello World"
,所以我假设您正在从某个文件中读取字符串。为了将其转换为“Hello”,您必须将文本解析为单独的 unicode 数字,(取\uXXXX
并得到XXXX
)然后执行Integer.ParseInt(XXXX, 16)
获取一个十六进制值,然后将其转换为char
以获取实际字符。编辑:一些代码来完成这个: