导读 在编程的世界里,`byte` 和 `InputStream` 是两个非常重要的概念,它们之间的相互转换是处理数据流时的常见需求。🤔首先,从 `byte[]`...
在编程的世界里,`byte` 和 `InputStream` 是两个非常重要的概念,它们之间的相互转换是处理数据流时的常见需求。🤔
首先,从 `byte[]` 转换到 `InputStream` 非常简单,可以使用 `ByteArrayInputStream` 类。例如:
```java
byte[] data = {0x48, 0x65, 0x6C, 0x6C, 0x6F}; // "Hello" 的 ASCII 值
InputStream inputStream = new ByteArrayInputStream(data);
```
这样,你就可以像操作普通文件一样处理这段数据了!👏
反过来,将 `InputStream` 转换为 `byte[]` 则需要读取所有字节并存储到数组中。示例代码如下:
```java
InputStream inputStream = ...;
ByteArrayOutputStream buffer = new ByteArrayOutputStream();
int nRead;
byte[] data = new byte[16384];
while ((nRead = inputStream.read(data, 0, data.length)) != -1) {
buffer.write(data, 0, nRead);
}
buffer.flush();
byte[] byteArray = buffer.toByteArray();
```
这两种方法让数据处理更加灵活,无论是网络传输还是本地文件操作,都能轻松应对!🌟
版权声明:本文由用户上传,如有侵权请联系删除!