当前位置:  开发笔记 > 编程语言 > 正文

更改String的默认编码(byte [])

如何解决《更改String的默认编码(byte[])》经验,为你挑选了1个好方法。

有没有办法更改String(byte [])构造函数使用的编码?

在我自己的代码中,我使用String(byte [],String)来指定编码,但我使用的是无法更改的外部库.

String src = "with accents: é à";
byte[] bytes = src.getBytes("UTF-8");
System.out.println("UTF-8 decoded: "+new String(bytes,"UTF-8"));
System.out.println("Default decoded: "+new String(bytes));

这个输出是:

UTF-8 decoded: with accents: é à
Default decoded: with accents: é à

我试过更改系统属性,file.encoding但它不起作用.



1> Mat Mannion..:

您需要在启动JVM之前更改语言环境; 看到:

Java,错误ID 4163515

有些地方似乎暗示你可以通过在启动JVM时设置file.encoding变量来实现这一点,例如

java -Dfile.encoding=UTF-8 ...

......但我自己没试过.最安全的方法是在操作系统中设置环境变量.

推荐阅读
echo7111436
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有