一、一个字符串转byte数组怎么转?

byte[] byteArray = String.getBytes();

二、又想把生成的数组转回字符串怎么办?

String covertString = new String(byteArray);

以上的轻松愉快仅限于字符串之间互转(适当的时候还要注意编码格式)。

三、如果一个的数值byte[]数组怎么转成字符串?例如:

byte[] byteArray = new byte[]{-60,60};

如果用new String(byteArray)直接转,会丢失负数信息(毕竟char的取值范围和byte的取值范围不一样)。

所以一个较好的策略是把byte信息转成16进制的字符串,方便再从16进制字符串转回byte数组。

3.1 byte[]转成Hex String

public static String byteArrayToHexStr(byte[] byteArray) {if (byteArray == null) {return null;}char[] hexArray = "0123456789ABCDEF".toCharArray();char[] hexChars = new char[byteArray.length * 2];for (int j = 0; j < byteArray.length; j++) {int v = byteArray[j] & 0xFF;hexChars[j * 2] = hexArray[v >>> 4];hexChars[j * 2 + 1] = hexArray[v & 0x0F];}return new String(hexChars);
}

3.2 Hex String转成byte[]

public static byte[] hexStrToByteArray(String str) {if (str == null) {return null;}if (str.length() == 0) {return new byte[0];}byte[] byteArray = new byte[str.length() / 2];for (int i = 0; i < byteArray.length; i++) {String subStr = str.substring(2 * i, 2 * i + 2);byteArray[i] = ((byte) Integer.parseInt(subStr, 16));}return byteArray;
}                

 

转载于:https://www.cnblogs.com/yoyotl/p/7510436.html

byte[] 转Hex String相关推荐

  1. np.nan is an invalid document, expected byte or unicode string

    np.nan is an invalid document, expected byte or unicode string https://stackoverflow.com/questions/3 ...

  2. Unity3D 集成 Face++ FacePlusPlus httpClient http协议 byte数组转string

    //開始由于要实现跨平台.考虑过用curl封装c++的dll(android *.so)的方式,在c#Dllimport实现 //后来发现Unity3D本身支持http协议.且face++的api都是 ...

  3. 2个在Java中将Byte []数组转换为String的示例

    将字节数组转换为String似乎很容易,但是很难做到正确. 每当字节转换为String或char时,许多程序员都会犯忽略字符编码的错误,反之亦然. 作为程序员,我们都知道计算机只能理解二进制数据,即0 ...

  4. Java翻译byte数据,java学习|图说String(二):基于byte数组的String方法调用

    基于byte数组的String方法调用 上文说到,String的方法调用都是基于byte数组,其实说更详细点:都是基于String中value字段的调用: 注,本文中所有的源码均基于jdk11 通过上 ...

  5. oracle byte 转string,C# 中 byte 转化成string

    C#编程过程中将Byte数组转换String是我们经常碰到的问题,那么如何解决C# Byte数组转换String呢?那么我们来看看具体的涉及到的方法以及关于如何解决C# Byte数组转换String的 ...

  6. java byte数组与String互转

    java byte数组与String互转 CreationTime--2018年7月6日14点53分 Author:Marydon 1.String-->byte[] 方法:使用String.g ...

  7. Java中的byte[]/char[]/int/String数据类型转换

    转载请标明出处:http://blog.csdn.net/xx326664162/article/details/51743969 文章出自:薛瑄的博客 你也可以查看我的其他同类文章,也会让你有一定的 ...

  8. byte数组转string

    /*** byte数组转string* @param src* @return*/private static String bytesToHexString(byte[] src) {StringB ...

  9. python系列之:str、byte、hex相互转换

    python系列之:str.byte相互转换 一.byte转化为str 二.str转化为byte 三.str.byte相互转换完整代码 四.byte转化hex 五.hex转化byte 六.byte.h ...

最新文章

  1. python 正则表达式方法_Python正则表达式一: 基本使用方法
  2. archlinux包管理器--pacman常用命令
  3. php在什么方面使用使用队列,你知道在什么情况下使用队列吗?
  4. php mysql管理_MySQL 连接与管理
  5. 王成录华为鸿蒙系统,华为手机销量仍在增长!华为王成录:手机会是鸿蒙OS系统的中心...
  6. android 音量调节 seekbar,Android 使用SeekBar调节系统音量
  7. flex 布局下侧轴的方向
  8. 固态硬盘ps3111开卡工具_固态硬盘必备工具:系统无损迁移、僵尸文件立现原形...
  9. 院友故事丨联培博士陈冬冬:顶会百发百中?博导关系?我的PhD经验之谈
  10. 181123每日一句
  11. matlb:kmeans命令进行聚类和pdist2进行预测(含代码)
  12. 用Python实现将滑动屏幕保存的录屏视频自动拼接为长截图
  13. 帮助睡眠最好的办法是什么?对睡眠好的东西分享
  14. 什么是云迁移?云迁移的四种模式分别是?
  15. Type mismatch: inferred type is MainActivity but FlutterEngine was expected
  16. Unity3d实现阿拉伯语适配,不规则特殊字符的处理。
  17. flask部署阿里云服务器,公网ip访问不了(一些问题及解答)
  18. C语言入门与进阶必备书
  19. Spark并行度的设定
  20. 长春初一学生数学补习班哪家好/麦田1对1补习费用

热门文章

  1. Linux 网络配置 ifconfig、ip、netstat 命令的使用
  2. Oracle SQL (2):SQL Fundamentals(Day II)
  3. expdp 详解及实例
  4. RobotLegs框架解析
  5. ulimit设置不生效?
  6. PHP 循环时间控制缓冲方法
  7. 学校网络安全事故救助机制初探
  8. Brave 浏览器将用户的onion地址泄漏给 DNS提供商
  9. 微软 Edge 浏览器被指共享隐私遥测数据
  10. 动手拆解众筹明星产品安全智能锁KeyWe后,发现它不安全且无解