gpt4 book ai didi

java - 在 Java 中获取 ASCII-6 编码

转载 作者:行者123 更新时间:2023-11-30 06:34:09 27 4
gpt4 key购买 nike

我使用的是传统的二进制消息格式,该格式需要 ASCII-6(6 位 ascii)编码的字符序列。我找不到 ASCII-6 的定义,但他们在规范中定义了以 A=0x01、B=0x02 等开头的字符映射。

我想知道在 java 中是否存在用于 ASCII-6 的字符集。如果不能,您能否以某种方式创建或定义自己的字符集?如果不是,是否有比创建字符映射到 ascii-6 编码值更好的解决方案?

最佳答案

我不确定是否存在任何 6 位编码,其中 A 是 0x01,B 是 0x02 等,但大多数六位编码中的字符可以与通过整数运算的 ASCII-7 字符。例如,SIXBIT DEC encoding 中的字符可以通过添加 32(基数 10)更改为 ASCII-7 字符,反之亦然,因为 SIXBIT 编码方案仅包含 ASCII-7 字符集中的可打印字符。

实现对涉及ByteCharacter 的此类转换的支持需要您编写 Charset并使用 CharsetProvider 注册它.棘手的部分是将 6 位序列映射到 Unicode 字符,因为 Byte 是字符集 Encoders 的最基本单位。和 Decoders操作。另一方面,如果你对每个需要 8 位宽字符的 6 位编码字符进行操作,那么上述算术运算就变得容易了,否则你将需要跟踪编码器/解码器是否处于无效状态。

关于java - 在 Java 中获取 ASCII-6 编码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7336509/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com