当前位置:网站首页>Conversion between commonsmultipartfile and file
Conversion between commonsmultipartfile and file
2022-07-07 23:16:00 【codepig16】
One 、 CommonsMultipartFile To File( Curve of national salvation )
Here is the way to save the country with curves : First use CommonsMultipartFile Of getInputStream() Method to get a InputStream Object of type , then InputStream Type into File
// take InputStream Type into File type
private static void inputStreamToFile(InputStream ins, File file) {
// Convert the output stream into a file
FileOutputStream os = null;
try {
os = new FileOutputStream(file);
int bytesRead = 0;
byte[] buffer = new byte[1024];
while((bytesRead = ins.read(buffer)) != -1) {
os.write(buffer, 0, bytesRead);
}
}catch(Exception e) {
throw new RuntimeException(" call inputStreamToFile Cause abnormal :"+e.getMessage());
}finally {
try {
if(os != null) {
os.close();
}
if(ins != null) {
ins.close();
}
}catch(IOException e) {
throw new RuntimeException("inputStreamToFile close io An exception occurred while :"+e.getMessage());
}
}
}
// Use inputStreamToFile Method
// When creating a file , Add any empty path , Create the file , You can delete it later
File xxFile = new File(" A non repeating path ");
try {
xxFile.createNewFile();
} catch (IOException e) {
// Handling exception information
}
try {
inputStreamToFile(xxCommonsMultipartFile.getInputStream(), xxFile);
} catch (IOException e) {
// Handling exception information
}
//xxFile Is the transformed File file
Two 、File To CommonsMultipartFile
// hold File Turn into CommonsMultipartFile
public FileItem createFileItem(File file, String fieldName) {
//DiskFileItemFactory(): Construct a configured instance of this class
// The first parameter threshold( threshold ): In bytes . Below this threshold item Will be stored in memory , Above this threshold item Will be stored as a file
// The second parameter data repository: The directory where the files will be created . Used to configure when creating file items , The temporary folder used when the file item is greater than the threshold , The system default temporary file path is adopted by default
FileItemFactory factory = new DiskFileItemFactory(16, null);
//fieldName: The name of the form field ; The second parameter ContentType; The third parameter isFormField; The fourth one : file name
FileItem item = factory.createItem(fieldName, "text/plain", true, file.getName());
int bytesRead = 0;
byte[] buffer = new byte[8192];
FileInputStream fis = null;
OutputStream os = null;
try {
fis = new FileInputStream(file);
os = item.getOutputStream();
while((bytesRead = fis.read(buffer, 0, 8192)) != -1) {
os.write(buffer, 0, bytesRead);// from buffer Get data from and write
}
} catch(IOException e) {
e.printStackTrace();
} finally {
try {
if(os != null) {
os.close();
}
if(fis != null) {
fis.close();
}
} catch (IOException e) {
e.printStackTrace();
}
}
return item;
}
// Use
FileItem fileItem = createFileItem(xxFile, " Form field name ");
CommonsMultipartFile xxCMF = new CommonsMultipartFile(fileItem);
//xxCMF Is the transformed CommonsMultipartFile file
边栏推荐
- 2022 words for yourself
- Statistical method for anomaly detection
- 微信论坛交流小程序系统毕业设计毕设(3)后台功能
- [language programming] exe virus code example
- Software test classification
- USB(十五)2022-04-14
- I wish you all the best and the year of the tiger
- [network] Introduction to C language
- Wechat forum exchange applet system graduation design (2) applet function
- Circumvention Technology: Registry
猜你喜欢
Wechat forum exchange applet system graduation design completion (6) opening defense ppt
Unity3D学习笔记5——创建子Mesh
2021ICPC上海 H.Life is a Game Kruskal重构树
Wechat forum exchange applet system graduation design completion (1) development outline
14、 Two methods of database export and import
Gee (IV): calculate the correlation between two variables (images) and draw a scatter diagram
[record of question brushing] 3 Longest substring without duplicate characters
Binary tree
Wechat forum exchange applet system graduation design completion (7) Interim inspection report
leetcode-520. 检测大写字母-js
随机推荐
网络安全-安装CentOS
About idea cannot find or load the main class
Introduction to anomaly detection
网络安全-钓鱼
Network security CSRF
解决:信息中插入avi格式的视频时,提示“unsupported video format”
The wonderful relationship between message queue and express cabinet
Wechat forum exchange applet system graduation design completion (7) Interim inspection report
Unity3D学习笔记6——GPU实例化(1)
网络安全-永恒之蓝
Lecture 30 linear algebra Lecture 5 eigenvalues and eigenvectors
Innovation today | five key elements for enterprises to promote innovation
成年人只有一份主业是要付出代价的,被人事劝退后,我哭了一整晚
30讲 线性代数 第五讲 特征值与特征向量
turbo intruder常用脚本
oc 可变參数传递
Kubernetes' simplified data storage storageclass (creation, deletion and initial use)
小程序多种开发方式对比-跨端?低代码?原生?还是云开发?
2021-01-12
Use JfreeChart to generate curves, histograms, pie charts, and distribution charts and display them to JSP-1