在我的Java应用程序中,我传递了一个如下所示的字符串:
"\ u00a5123"
将该字符串打印到控制台时,我得到与输出相同的字符串(如预期的那样).
但是,我想通过将unicode转换为实际的日元符号(\ u00a5 - >日元符号)来打印出来 - 我将如何进行此操作?
即所以它看起来像这样:"[日元符号] 123"
ape*_*ins 16
我写了一个小程序:
public static void main(String[] args) {
System.out.println("\u00a5123");
}
Run Code Online (Sandbox Code Playgroud)
它的输出:
¥123
即它输出的确与您在帖子中所述的内容完全相同.我不确定是否还有其他事情发生.您使用的是哪个版本的Java?
编辑:
为了回应您的澄清,有几种不同的技术.最简单的方法是查找"\ u"后跟4个十六进制代码字符,提取该片段并用带有十六进制代码的unicode版本替换(使用Character类).这当然假设字符串前面没有\ u.
我不知道任何特定的系统来解析String,好像它是一个编码的Java字符串.
| 归档时间: |
|
| 查看次数: |
62384 次 |
| 最近记录: |