在将字符串转换为Unicode时,我正在寻找Java中等同于C#.ToString(“X4”)的真实等价物。
Java代码:
char[] stringChars = "Notices".ToCharArray();
List<string> ucs2code = new List<string>();
foreach (char chr in stringChars)
{
string chrCode = ((int)chr).ToString("X4");
ucs2code.Add(chrCode);
}
string charCode = string.Join("", ucs2code);
这给了我一个结果004E006F00740069006300650073
,正是我所需要的。
我尝试过的Java代码:
char[] stringChars = "Notices".toCharArray();
String charCode = "";
for (char chr : stringChars) {
String chrCode = Integer.toHexString((int)chr);
charCode += chrCode;
}
这给了我4e6f7469636573
。 看起来是正确的,但不完全是我需要的。
我是否漏掉了什么?一些建议会很有帮助。
chrCode
填充为 00 并转换为大写的问题吗? - thumbmunkeys