我有一些处理汉字的代码。在eclipse中,我设置了项目->属性->资源->文本文件encoding = UTF-8
。我使用javac.encoding=UTF-8
通过ANT构建我的.ear。当在Websphere7中运行我的.ear时。但不知何故,文本文件不再编码为UTF-8。
问题是在UTF-8中,String.getBytes(
)。length会为每个汉字返回3,但如果没有UTF-8,所有汉字都会变成"?",因此String.getBytes()
.length为每个字符返回1。我需要想办法回到3号。
我错过了什么?Websphere中是否有我需要设置的设置?
谢谢,
您是如何读取文件的?你读过UTF-8字符集吗?
InputStream stream = Thread.currentThread()
.getContextClassLoader().getResourceAsStream("com/app/myfile.txt");
InputStreamReader streamReader = new InputStreamReader(stream, "UTF-8");
BufferedReader reader = new BufferedReader(streamReader);