首页 > Java > java教程 > 如何在 Java 字节数组、字符串和字节数组之间进行转换?

如何在 Java 字节数组、字符串和字节数组之间进行转换?

Linda Hamilton
发布: 2024-11-08 10:57:01
原创
730 人浏览过

How to Convert Between Java Byte Array, String, and Byte Array?

Java 字节数组、字符串和字节数组之间的转换

在 Java 中,交换数据常常涉及到字符串和字节数组格式之间的转换。这种转换在网络通信和数据存储中起着至关重要的作用。

假设您有一个字节数组,希望将其转换为字符串。如果您需要通过网络以字符串形式发送数据,则必须进行此转换。一种常见的方法是使用 Arrays.toString() 方法,该方法提供字节数组的字符串表示形式:

byte[] data = {1, 2, 3, 4, 5};
String dataString = Arrays.toString(data);
登录后复制

生成的 dataString 变量将包含字节数组的字符串表示形式:[1, 2, 3, 4, 5].

获得字符串格式的数据后,您可能需要将其转换回字节数组。通过网络接收数据并将其存储在字节数组中以供进一步处理时,通常需要这样做。

要将字节数组的字符串表示形式转换回字节数组,您需要解析各个字节值并使用这些值构造一个新的字节数组。以下是如何执行此转换的示例:

String receivedString = "[-47, 1, 16, 84, 2, 101, 110, 83, 111, 109, 101, 32, 78, 70, 67, 32, 68, 97, 116, 97]";

// Split the string into individual byte values
String[] byteValues = receivedString.substring(1, receivedString.length() - 1).split(",");

// Create a new byte array with the parsed byte values
byte[] bytes = new byte[byteValues.length];
for (int i = 0; i < bytes.length; i++) {
    bytes[i] = Byte.parseByte(byteValues[i].trim());
}
登录后复制

执行此代码后,bytes 变量将包含从字符串表示形式恢复的字节数组。

需要注意的是, Arrays.toString() 方法返回数组的字符串表示形式,而不是实际的字节数组本身。因此,要检索原始字节数组,您需要显式解析字符串中的字节值并重建字节数组。

以上是如何在 Java 字节数组、字符串和字节数组之间进行转换?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板