Java 如何通过编程确定特定字符集中字符的最大字节大小?

Java 如何通过编程确定特定字符集中字符的最大字节大小?,java,character-encoding,Java,Character Encoding,我通过以下方式获取所有受支持的字符集: Object[] Charsets = Charset.availableCharsets().keySet().toArray(); 现在,我需要遍历可以在该字符集中编码的每个字符。为此,我考虑使用每个编码的最大字节数,并对每个字节进行Byte.MIN\u VALUE到Byte.MAX\u VALUE。然后,我将该字节数组传递给String构造函数,该构造函数接受byte[]数组和特定编码 但是,对于如何确定特定字符集中字符表示的最大字节长度,我找不到

我通过以下方式获取所有受支持的字符集:

Object[] Charsets = Charset.availableCharsets().keySet().toArray();
现在,我需要遍历可以在该字符集中编码的每个字符。为此,我考虑使用每个编码的最大字节数,并对每个字节进行
Byte.MIN\u VALUE
Byte.MAX\u VALUE
。然后,我将该字节数组传递给
String
构造函数,该构造函数接受
byte[]
数组和特定编码

但是,对于如何确定特定字符集中字符表示的最大字节长度,我找不到任何线索

我尝试使用空格字符(即“”)在该编码中创建字符串,并使用
.getBytes(“”.length
)。然而,我相信这只适用于固定大小的字符集。有一些字符集,其中字符的编码可以具有可变的字节数

这不是一个商业软件,所以它不需要一个漂亮的解决方案。我需要为每个受支持的字符集创建一种视觉映射。每个字符表示都被写入一个图像中。我也不确定应该如何选择一种能够正确显示字符集所有字符的字体


有什么想法吗?

我真不敢相信我错过了。非常感谢你。我会尽快接受答案。
charset.newEncoder().maxBytesPerChar()