Blame view

src/com/fh/util/FileUpload.java 2.95 KB
ad5081d3   孙向锦   初始化项目
1
2
3
4
5
6
7
8
9
10
11
12
13
14
  package com.fh.util;
  
  import java.io.BufferedInputStream;
  import java.io.File;
  import java.io.FileNotFoundException;
  import java.io.FileOutputStream;
  import java.io.IOException;
  import java.io.InputStream;
  import java.net.MalformedURLException;
  import java.net.URL;
  
  import org.apache.commons.io.FileUtils;
  import org.springframework.web.multipart.MultipartFile;
  
ad5081d3   孙向锦   初始化项目
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
  public class FileUpload {
  
  	/**上传文件
  	 * @param file 			//文件对象
  	 * @param filePath		//上传路径
  	 * @param fileName		//文件名
  	 * @return  文件名
  	 */
  	public static String fileUp(MultipartFile file, String filePath, String fileName){
  		String extName = ""; // 扩展名格式:
  		try {
  			if (file.getOriginalFilename().lastIndexOf(".") >= 0){
  				extName = file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf("."));
  			}
  			copyFile(file.getInputStream(), filePath, fileName+extName).replaceAll("-", "");
  		} catch (IOException e) {
  			System.out.println(e);
  		}
  		return fileName+extName;
  	}
  	
  	/**
  	 * 写文件到当前目录的upload目录中
  	 * @param in
  	 * @param fileName
  	 * @throws IOException
  	 */
  	private static String copyFile(InputStream in, String dir, String realName)
  			throws IOException {
  		File file = mkdirsmy(dir,realName);
  		FileUtils.copyInputStreamToFile(in, file);
  		return realName;
  	}
  	
  	
  	/**判断路径是否存在,否:创建此路径
  	 * @param dir  文件路径
  	 * @param realName  文件名
  	 * @throws IOException 
  	 */
  	public static File mkdirsmy(String dir, String realName) throws IOException{
  		File file = new File(dir, realName);
  		if (!file.exists()) {
  			if (!file.getParentFile().exists()) {
  				file.getParentFile().mkdirs();
  			}
  			file.createNewFile();
  		}
  		return file;
  	}
  	
  	
  	/**下载网络图片上传到服务器上
  	 * @param httpUrl 图片网络地址
  	 * @param filePath	图片保存路径
  	 * @param myFileName  图片文件名(null时用网络图片原名)
  	 * @return	返回图片名称
  	 */
  	public static String getHtmlPicture(String httpUrl, String filePath , String myFileName) {
  		
  		URL url;						//定义URL对象url
  		BufferedInputStream in;			//定义输入字节缓冲流对象in
  		FileOutputStream file;			//定义文件输出流对象file
  		try {
  			String fileName = null == myFileName?httpUrl.substring(httpUrl.lastIndexOf("/")).replace("/", ""):myFileName; //图片文件名(null时用网络图片原名)
  			url = new URL(httpUrl);		//初始化url对象
  			in = new BufferedInputStream(url.openStream());									//初始化in对象,也就是获得url字节流
  			//file = new FileOutputStream(new File(filePath +"\\"+ fileName));
  			file = new FileOutputStream(mkdirsmy(filePath,fileName));
  			int t;
  			while ((t = in.read()) != -1) {
  				file.write(t);
  			}
  			file.close();
  			in.close();
  			return fileName;
  		} catch (MalformedURLException e) {
  			e.printStackTrace();
  		} catch (FileNotFoundException e) {
  			e.printStackTrace();
  		} catch (IOException e) {
  			e.printStackTrace();
  		}
  		return null;
  		
  	}
  }