我无法在屏幕上显示特殊字符(抛光字符)。我有一个要求,我从数据库中获取具有一些特殊字符的数据。我以 xml 格式获取数据(xml 未将其识别为字符串)并将其传递给我尝试显示数据的操作。我正在尝试将特殊字符的 Uniciode 作为 ł
但是当我尝试显示时,它被转换为 ł
所以我无法显示它,因为它不将其作为字符串。
String ex1="ł";
System.out.println("ex1...."+ex1);
output:: ?
我正在尝试使用以下代码获取 Unicode::
public static String convert (String str) throws UnsupportedEncodingException
{
String tc = str;
String output = "";
char[] ca = tc.toCharArray();
for (int i = 0; i < ca.length; ++i)
{
char a = ca[i];
if ((int) a > 255)
{
output += "&"+"#X"+ Integer.toHexString((int) a) + ";";
}
else
{
output += a;
}
}
return output;
}
输出为:如果输入为 str="ł"
,则 output=ł
最佳答案
不要重新发明轮子!使用 escapeXml StringEscapeUtils 的方法来自 Apache Commons Lang 的类(class)库,这使得这个简单的解决方案成为可能:
StringEscapeUtils.escapeXml(input);
关于java - 无法显示特殊字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7885073/