如何使用java创建多部分文件

如何使用java创建多部分文件,java,file,multipart,Java,File,Multipart,我正在尝试使用我的JavaSpringMVCWeb应用程序创建多部分文件并上传这些文件。我找不到任何使用Java创建多部分文件的文档,所以我尝试创建一个文件,然后将其转换为多部分文件,然后上传。我使用以下代码: int randomCode = randomCodeGenerator() ; File file1 = new File("E:\\myAccount\\voice"+randomCode+".xml"); FileWriter writer = new FileWriter(fil

我正在尝试使用我的JavaSpringMVCWeb应用程序创建多部分文件并上传这些文件。我找不到任何使用Java创建多部分文件的文档,所以我尝试创建一个文件,然后将其转换为多部分文件,然后上传。我使用以下代码:

int randomCode = randomCodeGenerator() ;
File file1 = new File("E:\\myAccount\\voice"+randomCode+".xml");
FileWriter writer = new FileWriter(file1);
writer.write(response);
writer.close();
然后,我尝试将其转换为多部分文件,如下所示:

DiskFileItem fileItem = new DiskFileItem("file", "text/plain", false, file1.getName(), (int) file1.length() , file1.getParentFile());
fileItem.getOutputStream();
MultipartFile multipartFile = new CommonsMultipartFile(fileItem);
byte[] `filedata` = multipartFile.getBytes();
现在我总是将
filedata
获取为0,这意味着多部分文件是空的。但在将文件转换为多部分之前,我已经写入了该文件


我不确定我在这里错过了什么。此外,我不确定这种方法是否能在我的服务器上运行,因为我正在尝试在磁盘上创建一个文件,该文件在本地对我有效。是否有任何方法可以创建一个多部分文件或将该文件转换为多部分文件而不丢失数据。

如果您这样上传,则该文件将从本地读取,并且在您签入或从服务器运行时不会读取

使用通用多部分或标准多部分解析器,这可能会解决您的问题

请参阅下面的代码

JSP
method=“POST”enctype=“多部分/表单数据”>

控制器:

Multipart upload;
byte[] bytes = file.getBytes(); 
Path path=file.get(fileinputstream (upload));
private Multipart upload;
Getter and setter method;
Bean:

Multipart upload;
byte[] bytes = file.getBytes(); 
Path path=file.get(fileinputstream (upload));
private Multipart upload;
Getter and setter method;
注册Bean

@Bean public MultipartResolver multipartResolver() { 
    return new StandardServletMultipartResolver(); 
}

我试图在我的程序中创建文件,而不是上传它。有没有一种方法可以在java中创建文件或在java中将文件转换为多部分而不丢失数据多部分是MVC中上传文件的一种简单方法。如果未上载,则可以进行堆栈后跟踪。确保表单是通过post提交的,并且控制器方法也是post。