0

我有一些处理汉字的代码。在我的日食中,我设置了 project -> Properties -> Resource -> Text file 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 中是否有我需要设置的设置?

谢谢,

4

1 回答 1

0

你是如何阅读文件的?你读过 UTF-8 字符集吗?

InputStream stream = Thread.currentThread()
        .getContextClassLoader().getResourceAsStream("com/app/myfile.txt");
InputStreamReader streamReader = new InputStreamReader(stream, "UTF-8");
BufferedReader reader = new BufferedReader(streamReader);
于 2013-07-02T20:10:00.757 回答