因为需要与硬件相互通讯 用到了这些方法 亲测可用

/*** 16进制表示的字符串 转换为字节数组** @param hexString 16进制表示的字符串* @return byte[] 字节数组*/public static byte[] hexStringToByteArray(String hexString) {hexString = hexString.replaceAll(" ", "");int len = hexString.length();byte[] bytes = new byte[len / 2];for (int i = 0; i < len; i += 2) {// 两位一组,表示一个字节,把这样表示的16进制字符串,还原成一个字节bytes[i / 2] = (byte) ((Character.digit(hexString.charAt(i), 16) << 4) + Character.digit(hexString.charAt(i + 1), 16));}return bytes;}
/*** byte[]数组转换为16进制的字符串** @param bytes 要转换的字节数组* @return 转换后的结果*/public static String bytesToHexString(byte[] bytes) {StringBuilder sb = new StringBuilder();for (int i = 0; i < bytes.length; i++) {String hex = Integer.toHexString(0xFF & bytes[i]);if (hex.length() == 1) {sb.append('0');}sb.append(hex);}return sb.toString();}
/*** 将16进制转换为二进制* 注意 是倒叙* @param hexString* @return*/public static String hexString2binaryString(String hexString) {//16进制转10进制BigInteger sint = new BigInteger(hexString, 16);//10进制转2进制String result = sint.toString(2);//字符串反转return new StringBuilder(result).reverse().toString();}
/*** @Description  字符串转16进制* @Date 15:12 2022/9/5* @Param [s] 中文 或 英文 字符串* @return 转换后的16进制字符串**/public static String chinese2Hex(String chinese) {String ss = chinese;byte[] bt = new byte[0];try {bt = ss.getBytes("UTF-8");} catch (Exception e) {e.printStackTrace();}String s1 = "";for (int i = 0; i < bt.length; i++) {String tempStr = Integer.toHexString(bt[i]);if (tempStr.length() > 2)tempStr = tempStr.substring(tempStr.length() - 2);s1 = s1 + tempStr + "";}return s1.toUpperCase();}
/*** @Description  16进制直接转换成为字符串* @Date 15:42 2022/9/5* @Param [hex] 16进制字符串(Byte之间无分隔符* @return 解析出来的字符串**/public static String hexStr2Str(String hex) {String hexStr = "";String str = "0123456789ABCDEF"; //16进制能用到的所有字符 0-15for(int i=0;i<hex.length();i++){String s = hex.substring(i, i+1);if(s.equals("a")||s.equals("b")||s.equals("c")||s.equals("d")||s.equals("e")||s.equals("f")){s=s.toUpperCase().substring(0, 1);}hexStr+=s;}char[] hexs = hexStr.toCharArray();//toCharArray() 方法将字符串转换为字符数组。int length = (hexStr.length() / 2);//1个byte数值 -> 两个16进制字符byte[] bytes = new byte[length];int n;for (int i = 0; i < bytes.length; i++) {int position = i * 2;//两个16进制字符 -> 1个byte数值n = str.indexOf(hexs[position]) * 16;n += str.indexOf(hexs[position + 1]);// 保持二进制补码的一致性 因为byte类型字符是8bit的  而int为32bit 会自动补齐高位1  所以与上0xFF之后可以保持高位一致性//当byte要转化为int的时候,高的24位必然会补1,这样,其二进制补码其实已经不一致了,&0xff可以将高的24位置为0,低8位保持原样,这样做的目的就是为了保证二进制数据的一致性。bytes[i] = (byte) (n & 0xff);}String content = "";try {content = new String(bytes,"UTF-8");} catch (Exception e) {e.printStackTrace();}return content;}

注: 这些方法均是从各个地方收集过来的、并不是我本人编写  如有侵权请通知我立删!

16进制字符串转成字节数组、字节数组转16进制字符串、16进制字符串转成2进制字符串、中英文 字符串转16进制、16进制转换成中英文 字符串相关推荐

  1. python 数字转化excel行列_Python 3 实现数字转换成Excel列名(10进制到26进制的转换函数)...

    背景: 最近在看一些Python爬虫的相关知识,讲爬取的一些数据写入到Excel表中,当时当列的数目不确定的情况下,如何通过遍历的方式讲爬取的数据写入到Excel中. 开发环境: Python 3  ...

  2. 计算机内区位码默认是几进制,汉字的区位码怎么转换成十六进制?

    一.ASCII码是计算机进行信息交换的最基本字符标准,例如,键盘与计算机主机之间的通信就是靠ASCII的标准来支持的.例如: 大写字母A的ASCII码就是十进制数65,数字0的ASCII就是48,小写 ...

  3. 使用System.Convert.ToString将字符串转换成utf16进制编码

    我们在编写某些特殊的字符串处理程序的时候,需要获得字符的16进制编码,这个在vb中一般使用asc函数来进行,但是在c#中就没有那么简单.前一阵,为了将url中的汉字转换成utf编码的,我发现可以用Sy ...

  4. python文件转换成jar包_Python一键转Jar包,Java调用Python新姿势!

    粉丝朋友们,不知道大家看故事看腻了没(要是没腻可一定留言告诉我^_^),今天这篇文章换换口味,正经的来写写技术文.言归正传,咱们开始吧! 今天的这篇文章,聊一个轩辕君之前工作中遇到的需求:如何在Jav ...

  5. badatatable转成json_数据表转换成json(DatatableToJson)

    #region 转换Table为JSON数据 /// /// 转换Table为JSON数据 /// /// /// public static string TableToJson(DataTable ...

  6. 阿拉伯数字小写金额转换成中文大写金C额程序说明

    阿拉伯数字小写金额转换成中文大写金额C程序说明 1.问题的提出 寒假帮同学交缴话费时,不经意间看到收据上同时有小写金额和大写金额,想想各种各样的票据诸如缴费收据.银行业务回单.商场销售凭证.专用发票等 ...

  7. 地址转换成百度经纬度,数据太多!不愿意花钱?

    需求 最近出了一个这样的需求,需要把几百万的数据,进行地址,进行经纬度转换 百度api 缺点:需要收费,然后看了下价格,有点贵,不愿意花钱?那没就,只能自己进行数据爬取 先找好目标网站 https:/ ...

  8. iOS 秒数转换成时间,时,分,秒

    //转换成时分秒 - (NSString *)timeFormatted:(int)totalSeconds { int seconds = totalSeconds % 60;      int m ...

  9. 如何将PDF转换成JPEG图片?

    ▌01 将PDF转换成JPEG 1.为什么转换? 有的时候需要将PDF文件转换成对应的JPEG文件嵌入在某些文档中,比如对应的PowerPoint,CSDN网页中.这方面的需求如同 使用 python ...

  10. 如何把html转换成音频网址,怎么把视频转换成音频 视频转换成mp3

    怎么把视频转换成音频?看到一些视频背景音乐好听想要下载下来却找不到音乐的名称怎么办呢?(⊙v⊙)所以俗话说得好,求人不如求已,大伙自己动手,"丰衣足食",可是不知歌名,又没学霸那逆 ...

最新文章

  1. 两张图看懂GC 日志
  2. C# 字符串格式化大全
  3. oracle表空间dbf文件,Oracle 11g表空间dbf文件迁移
  4. 并发编程--线程池与进程池
  5. Scanner类、Random类、ArrayList类
  6. 编写一个简单的spring MVC程序
  7. C#操作SQL Server数据库
  8. Android studio修改Logcat颜色
  9. 工作2年跳槽阿里,面试官会问哪些?(免费领取Java面试题)
  10. mycat是什么_MyCat
  11. JAVA—字符串怎么转换成整数
  12. python 获取请求链接下载文件的大小和文件特征
  13. JavaScript开发必备!这四款静态代码分析工具你了解吗?
  14. sql数据库中毒,扩展名被改为.supporthelpgood​,.666decrypt666​​​​​​,.xxxxx,.dom,勒索病毒加密该如何恢复数据
  15. python中逗号在print的作用_Python中逗号的三种作用
  16. 不同进制之间相互转换
  17. MySQL中的极限值
  18. 做程序界中的死神,获取自己的灵力修养
  19. C-Lodop云打印服务系统存在任意文件读取漏洞
  20. 为什么软件开发很难外包

热门文章

  1. Linux入门小抄-part1-初识Linux
  2. 自制汉字字库,识别汉字(四)(实用篇)
  3. 数据结构查找-7-4 集合相似度 (25 分)
  4. android_基础_ViewPager中Fragment的重复创建、复用问题
  5. 注会用计算机,注会机考系计算器使用
  6. 把devc++调好看
  7. oracle solaris studio,Oracle Solaris Studio 软件简介
  8. 在64位的操作系统下运行masm
  9. DCDC电源PCB布局
  10. Proteus 8.9原理图转换为PCB图