下面我有一个小测试程序,可以验证代码页 CP852是否完全支持字符串的内容。有更优雅的方式吗?
public class CodepageTest {
public static void main(String[] args) {
try {
String test = "æøå123";
String test2 = new String(test.getBytes("CP852"), "CP852");
System.out.println(test);
System.out.println(test2);
System.out.println("String supported in codepage: " + (test.equals(test2)));
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
}
}
输出:
æøå123
???123
String supported in codepage: false
答案 0 :(得分:1)
您可以明确创建与您的字符集对应的编码器并使用its canEncode
method:
boolean canEncode = Charset.forName("CP852").newEncoder().canEncode(test);