首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 企业软件 > 行业软件 >

commons-fileupload下传

2012-07-01 
commons-fileupload上传commons-fileupload上传在这里分三步说明:第一步:jsp页面Form表单:???????????????

commons-fileupload上传

commons-fileupload上传在这里分三步说明:commons-fileupload下传

第一步:jsp页面Form表单:

?????????????????????

??????? <form name="form1" id="form1" action="${root }/save" enctype="multipart/form-data" method="post" onsubmit="return checkFile(document.getElementById('file'),'errShow2');" >


???????<textarea style='width:99%' rows="10"? name="mc" id="mc" ></textarea>???????
???????<input type="file" name="file" id="file" style="width: 98%"/>&nbsp;&nbsp;
???????<input type="submit" value="保&nbsp;存"? />


??????? </form>

第二步:javascript验证上传文件(以只允许上传txt文件为例):

????????? //验证文件类型

? function checkFile(imgFile,id)
? {
??????var fileName=getFileName(imgFile);//获取上传文件名称
????? var fileType=getFileType(fileName);?//获取上传文件类型
? ??? var bool=checkImgType(fileType);//检查上传文件类型
? ??? if(!bool){
???????????//验证没通过,不允许上传
?????????? return false;
? ??? }

????? //验证通过

????? return true;
???}

var right_type=new Array("txt")//设置允许上传的文件类型
function checkImgType(fileStr)
{?
?????? fileStr=fileStr.toLowerCase();
?????? for (i=0;i<right_type.length;i++){
??????????? ?if(right_type[i]==fileStr){return true;}
???????}
???????return false;
}
function getFileName(fileObj)
{
???????var filepath = fileObj.value;?

?????? if(filepath==null||filepath==""){return "";}
?????? if(filepath.lastIndexOf("\")!=-1){
????????????? filename= filepath.substring(filepath.lastIndexOf("\")+1,filepath.length);
????????????? return filename;
?????? }else{
??? ????????? return filepath;
?????? }???
}
function getFileType(fileName)
{
?????? if(fileName==null||fileName==""){return "";}
?????? if(fileName.lastIndexOf(".")!=-1){
?????????????? fileType= fileName.substring(fileName.lastIndexOf(".")+1,fileName.length);
?????????????? return fileType;
??????? }else{
? ???????????? return "";
??????? }
}

第三步:后台java代码获取上传内容,上传文件

DiskFileItemFactory factory = new DiskFileItemFactory();
ServletFileUpload upload = new ServletFileUpload(factory);

upload.setHeaderEncoding("UTF-8");

List<FileItem> list = upload.parseRequest(request);?

String mc = null;//表单中的mc输入项

for (FileItem item : list) {
??? ?if (!item.isFormField()) {//如果是上传的文件
???? ?????? ?String name = item.getName();//上传文件的名称
????????????? byte[] bin = item.get();
????????????? if (bin.length > 1024 * 1024) {//可用来限制上传文件的大小,这里限制了1024K字节!


??????????????}else if(bin!=null&&bin.length>0){//上传的文件处理
?????

??????????????}
???? }else{//如果是form表单内容
??????????????? if("mc".equalsIgnoreCase(item.getFieldName())){
????????????????????????? mc = item.getString("UTF-8");//设置表单数据的编码
???????????????? }?
?????}
?}?

热点排行