欢迎来到天天文库
浏览记录
ID:34723817
大小:190.68 KB
页数:9页
时间:2019-03-10
《java实现文件的上传》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、java实现文件的上传1、文件上传的核心点1:用来声明一个文件域。File:_____<浏览>.2:必须要使用post方式的表单。3:必须设置表单的类型为multipart/form-data.是设置这个表单传递的不是key=value值。传递的是字节码.对于一个普通的表单来说只要它是post类型。默认就是Content-type:application/x-www-from-urlencoded表现形式1:在request的请求头中出现。2:在form声明时设置一个类型enctyp
2、e="application/x-www-form-urlencoded";如果要实现文件上传,必须设置enctype=“multipart/form-data”设置表单类型。表单与请求的对应关系:2、如何获取上传的文件的内容-以下是自己手工解析txt文档packagecn.itcast.servlet;importjava.io.BufferedReader;importjava.io.IOException;importjava.io.InputStream;importjava.io.InputStreamRead
3、er;importjava.io.PrintWriter;importjavax.servlet.ServletException;importjavax.servlet.http.HttpServlet;importjavax.servlet.http.HttpServletRequest;importjavax.servlet.http.HttpServletResponse;/***如果一个表单的类型是post且enctype为multipart/form-date*则所有数据都是以二进制的方式向服务器上传递。*所
4、以req.getParameter("xxx")永远为null。一定要注意。*只可以通过req.getInputStream()来获取数据,获取正文的数据**@authorwangjianme**/publicclassUpServletextendsHttpServlet{publicvoiddoPost(HttpServletRequestreq,HttpServletResponseresp)throwsServletException,IOException{req.setCharacterEncoding("U
5、TF-8");Stringtxt=req.getParameter("txt");//返回的是nullSystem.err.println("txtis:"+txt);System.err.println("=========================================");InputStreamin=req.getInputStream();//byte[]b=newbyte[1024];//intlen=0;//while((len=in.read(b))!=-1){//Strings=newSt
6、ring(b,0,len);//System.err.print(s);//}BufferedReaderbr=newBufferedReader(newInputStreamReader(in));StringfirstLine=br.readLine();读取分隔行。//读取第一行,且第一行是分隔符号StringfileName=br.readLine();获取文件名。fileName=fileName.substring(fileName.lastIndexOf("\")+1);//bafasd.txt"file
7、Name=fileName.substring(0,fileName.length()-1);br.readLine();br.readLine();Stringdata=null;//获取当前项目的运行路径StringprojectPath=getServletContext().getRealPath("/up");获取项目的路径。PrintWriterout=newPrintWriter(projectPath+"/"+fileName);while((data=br.readLine())!=null){if(d
8、ata.equals(firstLine+"--")){break;}out.println(data);}out.close();}}3、使用apache-fileupload处理文件上传重点。框架:是指将用户经常处理的业务进行一个代码封装。让用户可以方便的调用。目前文件上传的(框架)组件:Apache----fi
此文档下载收益归作者所有