• 大小: 5.57MB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-11-15
  • 语言: Java
  • 标签: javaEE  

资源简介

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\.mymetadata

     文件        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.xml

     文件         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.xml

     文件       1111  2012-05-12 17:15  fileUpload\WebRoot\index.jsp

     文件         36  2011-05-31 14:06  fileUpload\WebRoot\meta-INF\MANIFEST.MF

     文件        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.xml

     文件     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个文件信息

评论

共有 条评论