Javaに中国語文字列のunicode情報を表示する
979 ワード
午後は振り回されたが、圧力テストソフトloadrunnerがdoradoを走っている間に、中国語がパラメータとして正常にデータを取得できなかった.
htmlのメッセージを追跡すると、中国語がunicodeの表示に変換されていることがわかり、プログラムで中国語の文字列をunicodeの表示文字列に変換するしかありません.
ネットで1周探して、いくつか理論を言ったが、しかし私の望む効果に達していません.
Jeの記事を参考に、(リンクを忘れた)自分でテストコードを書いたのは以下の通りです.
htmlのメッセージを追跡すると、中国語がunicodeの表示に変換されていることがわかり、プログラムで中国語の文字列をunicodeの表示文字列に変換するしかありません.
ネットで1周探して、いくつか理論を言ったが、しかし私の望む効果に達していません.
Jeの記事を参考に、(リンクを忘れた)自分でテストコードを書いたのは以下の通りです.
String name = " ";
String unicodeName = "\\u738B\\u5C0F\\u4E2B";
String[] unicodes = unicodeName.split("\\\\u");
String result = "";
for (String unicode : unicodes) {
if (StringUtils.isNotBlank(unicode)) {
result += String.valueOf((char) Integer.parseInt(unicode, 16));
}
}
Assert.assertEquals(name, result);
char[] names = name.toCharArray();
result = "";
for (char c : names) {
result += "\\u" + java.lang.Integer.toHexString((int) c).toUpperCase();
}
Assert.assertEquals(unicodeName, result);