要将InputStream转换为MultipartFile,你可以使用ByteArrayResource和ByteArrayMultipartFileEditor。

下面是一个示例代码:

import org.springframework.core.io.ByteArrayResource;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.support.ByteArrayMultipartFileEditor;

import java.io.IOException;
import java.io.InputStream;

public class InputStreamToMultipartFileConverter {
    public MultipartFile convert(InputStream inputStream, String filename) throws IOException {
        byte[] bytes = inputStream.readAllBytes();
        ByteArrayResource resource = new ByteArrayResource(bytes);

        MultipartFile multipartFile = new MockMultipartFile(filename, bytes);
        ByteArrayMultipartFileEditor multipartFileEditor = new ByteArrayMultipartFileEditor();
        multipartFileEditor.setAsText(resource);
        
        return (MultipartFile) multipartFileEditor.getValue();
    }
}

请注意,上面的示例使用了MockMultipartFile,它是Spring Test库中的一个类,用于模拟MultipartFile对象。如果你正在开发一个测试类,可以使用这个类。如果你在实际应用程序中使用它,请确保将其替换为Spring框架中的MultipartFile实现类

InputStream转MultipartFile

原文地址: http://www.cveoy.top/t/topic/h9Dv 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录