首页 > 科技 >

📚byte和InputStream的相互转换💻

发布时间:2025-03-17 20:28:31来源:

在编程的世界里,`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();

```

这两种方法让数据处理更加灵活,无论是网络传输还是本地文件操作,都能轻松应对!🌟

免责声明:本答案或内容为用户上传,不代表本网观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。 如遇侵权请及时联系本站删除。