資源簡介
javaEE Struts2上傳文件,配置接受圖片和zip文件的上傳
author:spring sky

代碼片段和文件信息
package?com.zhangke.action;
import?java.io.File;
import?java.io.FileInputStream;
import?java.io.FileOutputStream;
import?java.io.PrintWriter;
import?java.text.DecimalFormat;
import?org.apache.struts2.ServletActionContext;
import?com.opensymphony.xwork2.ActionSupport;
/***
?*?文件上傳例子???resource?code?encoding?is?utf-8
?*?
主要為了android客戶端實現功能???代碼寫的亂???請大家見諒
?*?@author?spring?sky
?*?Email:vipa1888@163.com
?*?QQ:84095105
?*
?*/
public?class?FileUpload?extends?ActionSupport?{
private?String?savePath;
/**這里的名字和html的名字必須對稱*/
private?File?img;
/**要上傳的文件類型*/
private?String?imgContentType;
/**文件的名稱*/
private?String?imgFileName;
/**
?*?指定的上傳類型???zip?和???圖片格式的文件
?*/
private?static?final?String[]?types?=?{?“application/x-zip-compressed“
“ZIP“?“image/pjpeg“?};
/***
?*?判斷文件的類型是否為指定的文件類型
?*?@return
?*/
public?boolean?filterType()?{
boolean?isFileType?=?false;
String?fileType?=?getImgContentType();
System.out.println(fileType);
for?(String?type?:?types)?{
if?(type.equals(fileType))?{
isFileType?=?true;
break;
}
}
return?isFileType;
}
public?String?getSavePath()?{
return?ServletActionContext.getRequest().getRealPath(savePath);
}
public?File?getImg()?{
return?img;
}
public?String?getImgFileName()?{
return?imgFileName;
}
public?void?setSavePath(String?value)?{
this.savePath?=?value;
}
public?void?setImgFileName(String?imgFileName)?{
this.imgFileName?=?imgFileName;
}
public?void?setImg(File?img)?{
this.img?=?img;
}
public?String?getImgContentType()?{
return?imgContentType;
}
public?void?setImgContentType(String?imgContentType)?{
this.imgContentType?=?imgContentType;
}
/**
?*?取得文件夾大小
?*?
?*?@param?f
?*?@return
?*?@throws?Exception
?*/
public?long?getFileSize(File?f)?throws?Exception?{
return?f.length();
}
public?String?FormetFileSize(long?fileS)?{//?轉換文件大小
DecimalFormat?df?=?new?DecimalFormat(“#.00“);
String?fileSizeString?=?““;
if?(fileS?1024)?{
fileSizeString?=?df.format((double)?fileS)?+?“B“;
}?else?if?(fileS?1048576)?{
fileSizeString?=?df.format((double)?fileS?/?1024)?+?“K“;
}?else?if?(fileS?1073741824)?{
fileSizeString?=?df.format((double)?fileS?/?1048576)?+?“M“;
}?else?{
fileSizeString?=?df.format((double)?fileS?/?1073741824)?+?“G“;
}
return?fileSizeString;
}
/**
?*?上傳文件操作
?*?
?*?@return
?*?@throws?Exception
?*/
public?String?upload()?throws?Exception?{
String?result?=?“unknow?error“;
PrintWriter?out?=?ServletActionContext.getResponse().getWriter();
if?(!filterType())?{
System.out.println(“文件類型不正確“);
ServletActionContext.getRequest().setAttribute(“typeError“
“您要上傳的文件類型不正確“);
result?=?“error:“?+?getImgContentType()?+?“?type?not?upload?file?type“;
}?else?{
System.out.println(“當前文件大小為:“
+?FormetFileSize(getFileSize(getImg())));
FileOutputStream?fos?=?null;
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????2408??2012-05-12?17:05??fileUpload\.classpath
?????文件????????303??2012-05-12?16:20??fileUpload\.myme
?????文件????????240??2011-05-31?14:12??fileUpload\.mystrutsdata
?????文件???????1703??2012-05-12?16:20??fileUpload\.project
?????文件????????500??2012-05-12?16:20??fileUpload\.settings\.jsdtscope
?????文件?????????88??2012-05-12?16:45??fileUpload\.settings\org.eclipse.core.resources.prefs
?????文件????????395??2012-05-12?16:20??fileUpload\.settings\org.eclipse.jdt.core.prefs
?????文件????????468??2012-05-12?16:20??fileUpload\.settings\org.eclipse.wst.common.component
?????文件????????252??2012-05-12?16:20??fileUpload\.settings\org.eclipse.wst.common.project.facet.core.xm
?????文件?????????49??2012-05-12?16:20??fileUpload\.settings\org.eclipse.wst.jsdt.ui.superType.container
?????文件??????????6??2012-05-12?16:20??fileUpload\.settings\org.eclipse.wst.jsdt.ui.superType.name
?????文件????????543??2011-06-17?11:46??fileUpload\src\.struts.mex
?????文件???????3844??2012-05-12?17:16??fileUpload\src\com\zhangke\action\FileUpload.java
?????文件????????202??2011-05-31?18:02??fileUpload\src\globalMessages_zh_CN.properties
?????文件???????1154??2012-05-12?16:34??fileUpload\src\struts.xm
?????文件???????1111??2012-05-12?17:15??fileUpload\WebRoot\index.jsp
?????文件?????????36??2011-05-31?14:06??fileUpload\WebRoot\me
?????文件????????543??2011-06-17?11:46??fileUpload\WebRoot\WEB-INF\classes\.struts.mex
?????文件???????4479??2012-05-12?17:16??fileUpload\WebRoot\WEB-INF\classes\com\zhangke\action\FileUpload.class
?????文件????????202??2011-05-31?18:02??fileUpload\WebRoot\WEB-INF\classes\globalMessages_zh_CN.properties
?????文件???????1154??2012-05-12?16:34??fileUpload\WebRoot\WEB-INF\classes\struts.xm
?????文件?????358273??2012-05-12?16:20??fileUpload\WebRoot\WEB-INF\lib\antlr-2.7.2.jar
?????文件???????4467??2012-05-12?16:20??fileUpload\WebRoot\WEB-INF\lib\aopalliance-1.0.jar
?????文件??????37854??2012-05-12?16:20??fileUpload\WebRoot\WEB-INF\lib\classworlds-1.1.jar
?????文件?????188671??2012-05-12?16:20??fileUpload\WebRoot\WEB-INF\lib\commons-beanutils-1.7.0.jar
?????文件??????91699??2012-05-12?16:20??fileUpload\WebRoot\WEB-INF\lib\commons-chain-1.2.jar
?????文件?????571259??2012-05-12?16:20??fileUpload\WebRoot\WEB-INF\lib\commons-collections-3.2.jar
?????文件?????148783??2012-05-12?16:20??fileUpload\WebRoot\WEB-INF\lib\commons-digester-2.0.jar
?????文件??????57779??2012-05-12?16:20??fileUpload\WebRoot\WEB-INF\lib\commons-fileupload-1.2.1.jar
?????文件??????87776??2012-05-12?16:20??fileUpload\WebRoot\WEB-INF\lib\commons-io-1.3.2.jar
............此處省略35個文件信息
- 上一篇:java org.common 開發,引用
- 下一篇:javaEE上傳文件和參數
評論
共有 條評論