如何在java中获取与Charset对象关联的数字代码页标识符(即1252)?我可以调用displayName()方法,但它返回字母数字标识符(如“windows-1252”,“cp-1252”,“CP1252”,...),而不仅仅是int代码。
在.NET中,在Encoding类中存在一个整数CodePage属性,但我找不到Java中的等效方法。
感谢。
答案 0 :(得分:0)
根据您提供的示例,您可以使用正则表达式:
private static final Pattern NUMERIC_CODEPAGE_PATTERN = Pattern.compile("[^\\d]*(\\d+)");
...
String displayName = charSet.displayName();
Matcher matcher = NUMERIC_CODEPAGE_PATTERN.matcher(displayName);
if(matcher.matches())
{
String numericCodeString = matcher.group(1);
int numericCode = Integer.parseInt(numericCodeString);
}