byte[] b=new byte[1024];
ByteArrayInputStream inputStream=new ByteArrayInputStream(b);
public static final byte[] input2byte(InputStream inStream)
throws IOException {
ByteArrayOutputStream swapStream = new ByteArrayOutputStream();
byte[] buff = new byte[1024];
int rc = 0;
while ((rc = inStream.read(buff, 0, 1024)) > 0) {
swapStream.write(buff, 0, rc);
byte[] in2b = swapStream.toByteArray();
return in2b;
ByteArrayOutputStream outputStream=new ByteArrayOutputStream();
byte[] b=outputStream.toByteArray()
Files.copy(inputstream,Paths.get(”文件的路径“))
byte[] imgBytes = multipartFile.getBytes();
byte[] testFile = new byte[1024];
InputStream inputStream = new ByteArrayInputStream(testFile);
MultipartFile file = new MockMultipartFile(ContentType.APPLICATION_OCTET_STREAM.toString(), inputStream);
//Blob是java.sql.Blob
可通过Hibernate提供的API:Hibernate.createBlob(new FileInputStream(" 可以为图片/文件等路径 "))
InputStream inputStream=blob.getBinaryStream()
byte数组=>inputStreambyte[] b=new byte[1024];ByteArrayInputStream inputStream=new ByteArrayInputStream(b);inputstream=>byte数组public static final byte[] input2byte(InputStream inStream) ...
由于工作需要,涉及到文件类型的转化,实际上MultipartFile有方法可以直接转化为InputStream,但是并没有办法可以从InputStream直接转化为MultipartFile。
网上的资料大概看了下,有两种简单的方案CommonsMultipartFile和MockMultipartFile,不过对我来说都不适用,因为我不能添加依赖。
我决定先看下MultipartFile怎么转化成InputStream。
public class CommonsMultipartFile impl
var byteArr = new Uint8Array([1, 2, 3, 4, 5]);
var blob = new Blob([byteArr], { type: 'application/octet-stream' });
在上面的代码中,我们首先创建一个Uint8Array类型的byte数组,然后使用Blob构造函数将其转换为Blob对象。第一个参数传入的是要转换的byte数组,第二个参数可以指定Blob对象的MIME类型。在这个例子中,我们指定了MIME类型为'application/octet-stream',表示这是一个未知的二进制数据。