java - java中如何将汉字转为十六进制

标签 java

我想将代码值在 2 字节、3 字节范围内的 unicode 字符转换为十六进制。

我知道如何将字符转换为十六进制。为此,我首先通过使用 int 进行转换将字符转换为 ascii。然后我使用 Integer.tohexString 将其转换为十六进制。

但是,我不确定如何处理中文等 unicode 字符。有人可以帮忙吗?

最佳答案

您不应该在 Java 中将字符串作为字节数组来处理...但是如果您愿意,可以使用 getBytes()

byte[] bs = "中文".getBytes("utf-8");
for(byte b : bs)
    System.out.print(Integer.toHexString(b) + " ");

关于java - java中如何将汉字转为十六进制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12275031/

相关文章:

java - 在 Java 中播放 .mp3 和 .wav?

java - android中CRC32的错误输出

java - Swagger OpenApi/看不到我的枚举属性

java - Dagger:android.content.Context 上没有可注入(inject)成员。你想添加一个可注入(inject)的构造函数吗?模块类要求

java - 定期检查元素是否存在 Selenium

Eclipse 中的 Java 错误 - soundresource 无法解析为变量

java - 在哪里可以找到 CPLEX 库(不是 AIMMS 的 GUI)?

java - 尝试从 ActivityManager.RunningTaskInfo 获取正在运行的应用程序图标时出错

java - 检查列表是否至少包含另一个 - 枚举

java - 术语引用实现是什么意思