1. 程式人生 > >[轉]從multifile獲取file式的inputstream

[轉]從multifile獲取file式的inputstream

csdn 本地 input 一些事 tails -c ces ons class

轉載地址:http://blog.csdn.net/a975261294/article/details/75477374

從springmvc獲取到的文件是MultipartFile類型的,有的時候不能直接用從這種類型獲取到的inputstream操作一些事情,比如從中初始化poi的Workbook,這時候要怎麽獲取到File式的流呢?
有一個方法就是把讀到的MultipartFile轉存到本地,然後再從本地讀取這個轉存的這個臨時文件,從中獲取文件流。這麽寫的話可以達到目的但是聽起來就很繁瑣對不對。還有一個方法,是從csdn論壇上看到的一部分獲取的靈感,在這裏分享給大家:
其中mFile就是MultipartFile類型的。

import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.commons.CommonsMultipartFile;
import org.apache.commons.fileupload.disk.DiskFileItem;

CommonsMultipartFile cFile = (CommonsMultipartFile) mFile;
        DiskFileItem fileItem = (DiskFileItem) cFile.getFileItem();
        InputStream inputStream = fileItem.getInputStream();

[轉]從multifile獲取file式的inputstream