fastupload 0.3.1公布
fastupload 0.3.1发布
e.getFileName()返回上传的文件名,解析到内存后,是没有路径的,需要保存到磁盘时才考虑路径的问题
e.toFile(target);
不能和其他参数一起提交吗,会出错
不能和其他参数一起提交吗,会出错
请从这篇blog中下载附件,如果有问题请加Q-Q群:210759641
e.getFileName()返回上传的文件名,解析到内存后,是没有路径的,需要保存到磁盘时才考虑路径的问题
e.toFile(target);
刚才放错了文件,重下一下
fastupload根据RFC 1867文档规范,编写的基于表单文件上传的组件,支持表单多文件上传,二进制文件与文本文件分开处理,彻底解决上传文本文 件编码问题,支持文件上传大小限制,支持文件上传进度计算,api接口简明,比Apache Common File Upload速度快、稳定性高,无需任何第三方库的支持。
完整的功能列表:
1. 支持上传多个文件
2. 支持sub-boundary
3. 提供“一次性”的编码解决方案
4. 支持单个上传文件大小限制,支持上传请求大小限制
5. 支持文件上传进度
6. 速度快,内存占用小,稳定性高
在fast upload 0.31版本中,增加了HttpMemoryUploadParser类,对multipart/form-data请求中非文件类型的数据处理,这个类处理上传请求是Apache Common File Upload的3~4倍。
快速上手:
新增加的HttpMemoryUploadParser的用法,
//以UTF8编码创建内存数据工厂 MultiPartDataFactory mpdf = new MemoryMultiPartDataFactory("utf-8"); HttpMemoryUploadParser uploadParser = new HttpMemoryUploadParser(request, mpdf); //创建HttpMemoryUploadParser对象 List<MultiPartData> list = uploadParser.parseList(); // 解析请求 //预先创建保存文件的路径 File dir = new File(System.getProperty("user.home") + "/memoryupload/dump"); dir.mkdirs(); for (MultiPartData e : list) { String target = String.format("%s/%s", dir.getAbsolutePath(), e.getFileName()); if (e.isFile()) { //如果是文件,保存到制定目录,否则,打印出来 e.toFile(target); } else { System.out.println(new String(e.getContentBuffer())); } }
HttpFileUploadParser的用法
//以UTF8编码,创建DiskFileFactory,指定文件保存的路径用当前用户的home目录 DiskFileFactory dff = new DiskFileFactory(System.getProperty("user.home") + "/fastupload/", "utf-8"); HttpFileUploadParser parser = new HttpFileUploadParser(request, dff); parser.parse(); //解析,并保存文件到dff对象所指定的目录下
项目地址:https://sourceforge.net/projects/fastupload/
1 楼
yyxh520
2012-08-27
怎么得到文件路径和名字
2 楼
Mojarra
2012-08-27
yyxh520 写道
怎么得到文件路径和名字
e.getFileName()返回上传的文件名,解析到内存后,是没有路径的,需要保存到磁盘时才考虑路径的问题
e.toFile(target);
3 楼
yyxh520
2012-08-27
<FORM NAME="mainForm" ACTION="#" ENCTYPE="multipart/form-data" METHOD="post"> 起始日期 <input name="startDate" type="text" id="startDate" readonly="true" onclick="SelectDate(this,'yyyy-MM-dd hh:mm:ss')"/> 截止日期 <input name="endDate" type="text" id="endDate" readonly="true" onclick="SelectDate(this,'yyyy-MM-dd hh:mm:ss')"/> 文件:<INPUT TYPE="file" NAME="file"/> <a href="#" onclick="mySearch()"><INPUT TYPE="button" VALUE="提交"></a> </FORM>
不能和其他参数一起提交吗,会出错
4 楼
Mojarra
2012-08-27
yyxh520 写道
<FORM NAME="mainForm" ACTION="#" ENCTYPE="multipart/form-data" METHOD="post"> 起始日期 <input name="startDate" type="text" id="startDate" readonly="true" onclick="SelectDate(this,'yyyy-MM-dd hh:mm:ss')"/> 截止日期 <input name="endDate" type="text" id="endDate" readonly="true" onclick="SelectDate(this,'yyyy-MM-dd hh:mm:ss')"/> 文件:<INPUT TYPE="file" NAME="file"/> <a href="#" onclick="mySearch()"><INPUT TYPE="button" VALUE="提交"></a> </FORM>
不能和其他参数一起提交吗,会出错
请从这篇blog中下载附件,如果有问题请加Q-Q群:210759641
5 楼
Mojarra
2012-08-27
Mojarra 写道
yyxh520 写道
怎么得到文件路径和名字
e.getFileName()返回上传的文件名,解析到内存后,是没有路径的,需要保存到磁盘时才考虑路径的问题
e.toFile(target);
刚才放错了文件,重下一下