java - 从 java Charset 对象获取数字代码页

标签 java encoding character-encoding codepages

如何获取与 java 中的 Charset 对象关联的数字代码页标识符(即 1252)?。我可以调用 displayName() 方法,但它返回字母数字标识符(如“windows-1252”、“cp-1252”、“CP1252”等),而不仅仅是 int 代码。

在 .NET 中,Encoding 类中存在一个整数 CodePage 属性,但我在 Java 中找不到等效的方法。

谢谢。

最佳答案

从您给出的示例中,您可以使用正则表达式:

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);
}

关于java - 从 java Charset 对象获取数字代码页,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4833009/

相关文章:

PHP/MySQL : Insert data into database character set problem

java - 如何为我的 java 程序按日期制定/设置时间限制

java - Project Lombok - 自定义生成的 Setter

java - 当我使用ajax调用jsp时,jsp返回很多额外的内容,特别是所有html标签

ruby - STDIN 和 Powershell - 如何使编码匹配?

c++ - `std::wregex` 是否支持 utf-16/unicode 或仅支持 UCS-2?

php - 在 WordPress 插件中从 PHP 代码写入 UTF-8 JSON 文件

c# - 编码.UTF8 默认

java - 使用 SQL 中的关键字对搜索结果进行排名

unicode - F# - 卡片套装未显示在控制台中