java - 确定Java中平台的默认字符集

标签 java character-encoding

我正在用 Java 编程

我的代码是:

byte[] b = test.getBytes();

api中规定,如果我们不指定字符编码,则采用默认的平台字符编码。

“默认平台字符编码”是什么意思?

是Java编码还是OS编码?

如果它表示操作系统编码,我如何检查 Windows 和 Linux 的默认字符编码?无论如何我们可以使用命令行获得默认字符编码?

最佳答案

系统属性 file.encoding 是特定于 JVM 供应商的。在这种特定情况下,它仅适用于 Sun JVM,可能不适用于 Sun 以外的其他供应商的 JVM。

而是使用提供的 Java SE API Charset#defaultCharset() .

Charset defaultCharset = Charset.defaultCharset();

关于java - 确定Java中平台的默认字符集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2677419/

相关文章:

Java Scanner 不接受字符串前的整数输入

character-encoding - 什么是二进制字符集?

java - 了解 Java 编码

java - 除了在 mockito 中手动设置值之外,还有其他方法可以模拟 pojo 吗?

java - 为什么我的 ArrayList 包含添加到列表中的最后一项的 N 个副本?

java - 在 JFreeChart PieChart 中将与部分无关的文本添加到图例中

java - org.json.simple.JSONObject 的编码问题 - 将 ★ 改为 ★...

php - 将 latin1 编码的文本插入 utf8 表(忘记使用 mysql_set_charset)

javascript - ajax aspx 脚本参数波兰语(特殊)字符

java - 在 Android 上没有工具栏可以制作视差效果吗?