java上傳文件代碼


import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.Iterator;
import java.util.UUID;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;


public class UploadUtil {

/**
* 上傳文件
* @param muiltRequest
* @param path
* @return
* @throws IOException
*/
public static String uploadFile(MultipartHttpServletRequest muiltRequest,
String path) throws IOException {
// 獲取遍歷文件名
Iterator iter=muiltRequest.getFileNames();
String url=""; //返回的圖片路徑
while (iter.hasNext()) {
MultipartFile file=muiltRequest.getFile(iter.next().toString());
System.out.println("-->>>"+file);
if(!file.isEmpty()||file!=null) {     //獲取原始文件名
String filename = file.getOriginalFilename();

InputStream is = file.getInputStream(); // 獲取輸入流,MultipartFile中可以直接得到文件的流
int pos = filename.lastIndexOf("."); // 取文件的格式
//唯一標識數字
UUID uuid = UUID.randomUUID();
String filenameurl = path + '\\' + uuid + filename.substring(pos);
try {
// 獲取輸出流
OutputStream os = new FileOutputStream(filenameurl);
// 創建一個緩沖區
byte[] buffer = new byte[1024];
// 判斷輸入流中的數據是否已經讀完的標識
int len = 0;
// 循環將輸入流讀入到緩沖區當中,(len=is.read(buffer))>0就表示is里面還有數據
while ((len = is.read(buffer)) > 0) {
// 使用FileOutputStream輸出流將緩沖區的數據寫入到指定的目錄當中
os.write(buffer, 0, len);
}
os.flush();
os.close();
is.close();

} catch (FileNotFoundException e) {
e.printStackTrace();

}
// url = url + uuid + filename.substring(pos)+";";
url = url + filenameurl+";";
}
}
url=url.substring(0, url.length()-1);
return url;
}

}

 

參考:

http://lijie-insist.iteye.com/blog/2331021

http://www.cnblogs.com/fjsnail/p/3491033.html

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM