Java实现ByteInputStream转base64
时间: 2024-10-10 19:12:57 浏览: 28
在Java中,可以使用`java.util.Base64`类将`ByteInputStream`转换成Base64编码的字符串。以下是简单的步骤:
首先,你需要导入`java.util.Base64`和`java.io.InputStream`相关的包:
```java
import java.io.ByteArrayOutputStream;
import java.io.InputStream;
import java.util.Base64;
```
然后,你可以创建一个函数来处理这个转换:
```java
public String byteInputStreamToBase64(InputStream inputStream) throws Exception {
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
byte[] buffer = new byte[1024];
int read;
while ((read = inputStream.read(buffer)) != -1) {
byteArrayOutputStream.write(buffer, 0, read);
}
inputStream.close(); // 关闭输入流
byte[] encodedBytes = byteArrayOutputStream.toByteArray();
return Base64.getEncoder().encodeToString(encodedBytes); // 使用Base64编码
}
```
在这个函数里,我们首先读取输入流的内容到`ByteArrayOutputStream`中,然后关闭输入流,最后使用`Base64.getEncoder().encodeToString(encodedBytes)`将字节数组转换为Base64字符串。
如果你需要在异常发生时捕获并处理,记得添加适当的try-catch块。
阅读全文