说明:

  1. 在将字符串转为16进制之前先进行一次转化,先将其转化成为Unicode编码(相当于把中文用英文字符代替),在转化成为16进制
  2. 相反的,在十六进制转换为字符串后的得到的是Unicode编码,此时再将Unicode编码解码即可获取原始字符串

字符串转16进制

/*** 字符串转换成为16进制(无需Unicode编码)* @param str* @return*/
public static String str2HexStr(String str) {char[] chars = "0123456789ABCDEF".toCharArray();StringBuilder sb = new StringBuilder("");byte[] bs = str.getBytes();int bit;for (int i = 0; i < bs.length; i++) {bit = (bs[i] & 0x0f0) >> 4;sb.append(chars[bit]);bit = bs[i] & 0x0f;sb.append(chars[bit]);// sb.append(' ');}return sb.toString().trim();
}

16进制转为字符串

/*** 16进制直接转换成为字符串(无需Unicode解码)* @param hexStr* @return*/
public static String hexStr2Str(String hexStr) {String str = "0123456789ABCDEF";char[] hexs = hexStr.toCharArray();byte[] bytes = new byte[hexStr.length() / 2];int n;for (int i = 0; i < bytes.length; i++) {n = str.indexOf(hexs[2 * i]) * 16;n += str.indexOf(hexs[2 * i + 1]);bytes[i] = (byte) (n & 0xff);}return new String(bytes);
}

java 字符串和16进制的相互转换相关推荐

  1. Java 字符串,byte[],16进制的字符串互转

    Java 字符串,byte[],16进制的字符串互转 /** * 字符串转换成十六进制字符串 */ public static String str2HexStr(String str) { char ...

  2. java字符串转16进制

    蓝牙通信中,有时我们需要将字符串转为16进制再进行传输,转换方法如下 try {byte[] b = s.getBytes();String str = " ";for (int ...

  3. C#字符串与16进制的相互转换

    字符串转换成16进制字符 /// <summary>/// 字符串转换为16进制字符/// </summary>/// <param name="s" ...

  4. Java 字符串转16进制数

    /*** 字符串转16进制* @param hex* @return*/ public static byte[] hex2byte(String hex) {String digital = &qu ...

  5. java int to hex_Java字符串转16 进制工具类Hex.java | 学步园

    Java 字符串转 16 进制工具类 Hex.java 实现 16进制 0xfecd .. 和 java 字符串之间的互转换! 如果做开发,通常用户登陆密码都会 mad5(salt + pwd) 然后 ...

  6. java进制转换、字符串与16进制互转/数字进制互转

    目录 十进制转其他进制 其他进制数字转十进制 字符串与16进制相互转换 十进制转其他进制 /*** 十进制转其他进制*/public static String conversion(Integer ...

  7. java读取文件 16进制_Java对文件的16进制读取和操作

    大家可以参考一下源代码的相关部分注释,然后写出自己的16进制处理程序. 有几个重点地方: 16进制字符串->10进制数          int input = Integer.parseInt ...

  8. 串口编程 - ascii字符与16进制的相互转换

    串口编程 - ascii字符与16进制的相互转换 如需转载请标明出处:http://blog.csdn.net/itas109 QQ技术交流群:129518033 文章目录 串口编程 - ascii字 ...

  9. 将时间转换为16进制字符串或16进制小端模式byte数据

    1.将String类型的时间转换 1>String类型时间转换为Date类型的时间 2>时间转换为时间戳 3>时间戳转换为16进制字符串 4>16进制字符串转换为16进制小端模 ...

最新文章

  1. 两个组件连线_如何正确的使用日志组件 Log4j、SLF4J、Logback
  2. Matlab绘图详细总结
  3. java中FutureTask的使用
  4. python清空列表clear_如何在Python中清空列表?
  5. PHP涟漪云-蓝奏云挂载直连下载程序源码
  6. SAP HANA中创建时间相关的数据时候需要Variant Schema
  7. mysql8.0.11创建用户报错_mysql8.0.11修改root密码,其他创建用户和删除用户
  8. 微信小程序开发-微信登陆流程
  9. 《程序员修炼之道》---- 修的是什么
  10. unity3d所要知道的基础知识体系大纲,可以对照着学习
  11. linux通过yum安装vim,linux/centos系统如何使用yum安装vi/vim?(转)
  12. 【Python刷题篇】——Python机器学习-鸢尾花分类
  13. SpringBoot 快速整合 QuartZ
  14. 如何生成唯一的Android设备ID?
  15. 485通讯( 详解 )
  16. IDEA 2021首个大版本发布,羊哥反手就是一个更新!附新亮点演示!
  17. Docer中使能GPU,GDB,perf
  18. PAT A1008 Elevator
  19. EF 通用帮助类 含分页 Lambda 拼接表达式
  20. 解决火狐,谷歌,ie兼容性问题

热门文章

  1. 十六、Barrier类(*)
  2. PolynomialFeatures多项式转换
  3. 安卓 jni 开发 —— Android Studio 打包 so 的坑
  4. #10049. 「一本通 2.3 例 1」Phone List
  5. 【案例】云卷云舒,ArcGIS成就时空交错的新闻播报
  6. 计算机管理中不显示独立显卡,win10系统下检测不到独立显卡如何解决
  7. Navicat Premium v12 破解教程(转)
  8. 协方差矩阵的齐性检验(接上一篇文章)
  9. c 语言中星号什么意思,Objective-C中的星号*是什么意思?
  10. 4、RDA8910(4GCAT1)CSDK二次开发:期待已久的ADC采集