图片上传

来源:互联网 发布:人工智能全球会议 编辑:程序博客网 时间:2024/06/04 23:32
import java.io.BufferedInputStream;import java.io.BufferedOutputStream;import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IOException;import java.io.InputStream;import java.io.OutputStream;import java.util.Date;import javax.servlet.http.HttpServletResponse;import land.constant.FileConstant;import org.apache.commons.io.FileUtils;import org.apache.struts2.ServletActionContext;public class UploadFile {private static final int BUFFER_SIZE = 1024;// 缓存区大小// 上传单张图片// 把图片文件上传到指定的目录public static boolean copy(File src, File dst) {boolean isSuccess = false;try {InputStream in = null;OutputStream out = null;try {in = new BufferedInputStream(new FileInputStream(src),BUFFER_SIZE);out = new BufferedOutputStream(new FileOutputStream(dst),BUFFER_SIZE);byte[] buffer = new byte[BUFFER_SIZE];while (in.read(buffer) > 0) {out.write(buffer);}} finally {if (null != in) {in.close();}if (null != out) {out.close();}}isSuccess = true;} catch (Exception e) {isSuccess = false;e.printStackTrace();}return isSuccess;}// 获得文件后缀名public static String getExtention(String fileName) {int pos = fileName.lastIndexOf(".");return fileName.substring(pos);}// 上传多张图片public static String upload(File uploadify, String uploadifyFileName) {/* 文件扩展名 */String extName = "";/* 文件保存的位置 */    String saveRealFilePath = "";/* * 相对路径,虚拟目录配置 <Context path="/images" docBase="相对路径[项目位置]"></Context> * 浏览器访问图片的路径是images/xx.jpg 实际存放路径是docBase */saveRealFilePath = ServletActionContext.getServletContext().getRealPath(FileConstant.FILE_PATH);/* * 绝对路径, 虚拟目录配置 <Context path="/images" docBase="绝对路径"></Context> * 浏览器访问图片的路径是images/xx.jpg 实际存放路径是docBase *//* saveRealFilePath = "D:\\upload"; */File fileDir = new File(saveRealFilePath);if (!fileDir.exists()) {fileDir.mkdirs();}File savefile;if (uploadifyFileName.lastIndexOf(".") >= 0) {extName = uploadifyFileName.substring(uploadifyFileName.lastIndexOf("."));}String nowTime = "" + new Date().getTime();savefile = new File(saveRealFilePath, nowTime + extName);try { FileUtils.copyFile(uploadify, savefile);} catch (Exception e) {e.printStackTrace();}HttpServletResponse response = ServletActionContext.getResponse();try {response.getWriter().print(nowTime + extName);} catch (IOException e) {e.printStackTrace();}return nowTime+extName;}public static boolean deleteFile(String filename) {boolean isSuccess = false;File imageFile = new File(ServletActionContext.getServletContext().getRealPath(FileConstant.FILE_PATH) + "/" + filename);if (imageFile.exists()) {imageFile.delete();isSuccess = true;} return isSuccess;}   }

0 0