public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
boolean isMultipart=ServletFileUpload.isMultipartContent(request);
if(isMultipart){
//PrintWriter out=response.getWriter();
//out.println("********");
FileItemFactory factory=new DiskFileItemFactory();
ServletFileUpload upload=new ServletFileUpload(factory);
Iterator items;
//out.println("********");
try{
//try {
items=upload.parseRequest(request).iterator();
//out.println("********");
//} catch (FileUploadException e) {
// TODO Auto-generated catch block
//e.printStackTrace();
//out.println("********");
//}
//out.println("********");
while(items.hasNext()){
FileItem item=(FileItem)items.next();
if(!item.isFormField()){
//out.println("********");
String name=item.getName();
// out.println("上传的文件为:"+name+"<br>");
//out.println("********");
String fileName2=name.substring(name.lastIndexOf('\\')+1,name.length());
//out.println("********");
String path=request.getRealPath("file")+File.separatorChar+fileName2;
//out.println("********");
File uploadedFile=new File(path);
//out.println("********");
//try {
item.write(uploadedFile);
//out.println("********");
//} catch (Exception e) {
//out.println("********");
//e.printStackTrace();
//}
//out.println("********");
response.setContentType("text/html");
response.setCharacterEncoding("gb2312");
PrintWriter out=response.getWriter();
//out.println("********");
//out.println("保存的地址"+path);
out.print("上传的文件为:"+name+"<br>");
out.print("保存的地址"+path);
}
}
}catch(Exception e){
e.printStackTrace();
//out.println("********");
}
}
这段代码在执行item.write(uploadedFile)时会有异常,整个程序的执行结果是一个空白页,真不知道为什么。
throws ServletException, IOException {
boolean isMultipart=ServletFileUpload.isMultipartContent(request);
if(isMultipart){
//PrintWriter out=response.getWriter();
//out.println("********");
FileItemFactory factory=new DiskFileItemFactory();
ServletFileUpload upload=new ServletFileUpload(factory);
Iterator items;
//out.println("********");
try{
//try {
items=upload.parseRequest(request).iterator();
//out.println("********");
//} catch (FileUploadException e) {
// TODO Auto-generated catch block
//e.printStackTrace();
//out.println("********");
//}
//out.println("********");
while(items.hasNext()){
FileItem item=(FileItem)items.next();
if(!item.isFormField()){
//out.println("********");
String name=item.getName();
// out.println("上传的文件为:"+name+"<br>");
//out.println("********");
String fileName2=name.substring(name.lastIndexOf('\\')+1,name.length());
//out.println("********");
String path=request.getRealPath("file")+File.separatorChar+fileName2;
//out.println("********");
File uploadedFile=new File(path);
//out.println("********");
//try {
item.write(uploadedFile);
//out.println("********");
//} catch (Exception e) {
//out.println("********");
//e.printStackTrace();
//}
//out.println("********");
response.setContentType("text/html");
response.setCharacterEncoding("gb2312");
PrintWriter out=response.getWriter();
//out.println("********");
//out.println("保存的地址"+path);
out.print("上传的文件为:"+name+"<br>");
out.print("保存的地址"+path);
}
}
}catch(Exception e){
e.printStackTrace();
//out.println("********");
}
}
这段代码在执行item.write(uploadedFile)时会有异常,整个程序的执行结果是一个空白页,真不知道为什么。
解决方案 »
- JSON数据的问题
- 如何用FusionCharts技术实现flash内容以word,excel,pdf格式的导出(高手进)
- jsp分页
- jsp Cookie 怎么取不到getName()
- java调用C++ webservice 问题 急!!!!
- Hibernate主键生成方式 Key Generator
- 菜鸟急需帮助javabean+sqlserver+jsp问题
- 有没有办法分析图形?
- 如何把一个表单的内容以邮件的形式发送出去!
- jsp连接mysql问题? ------>进来看看!
- 一个弹出消息框的登录页面怎么实现的?
- ERROR - Dispatcher.serviceAction(512) | Could not find action or result
try 是让你抓异常,别自己写out.println("********"),这没意义的!真要有异常你都不知道是什么异常;
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException { try {
DiskFileItemFactory factory = new DiskFileItemFactory();
ServletFileUpload upload = new ServletFileUpload(factory);
upload.setHeaderEncoding("utf-8");
if(!upload.isMultipartContent(request)){
return;
}
List<FileItem> list = upload.parseRequest(request);
for(FileItem item:list){
if(item.isFormField()){
String name = item.getFieldName();
String value = item.getString("utf-8");
System.out.println(name+"="+value);
}
else{
InputStream in = item.getInputStream();
String realPath = getServletContext().getRealPath("/WEB-INF/upload");
String name = item.getName();
String realName = name.substring(name.lastIndexOf('\\')+1);
OutputStream out = new FileOutputStream(realPath+"\\"+realName );
int len=-1;
byte[] by = new byte[1024];
while((len=in.read(by))!=-1){
out.write(by,0,len);
}
out.close();
in.close();
}
}
} catch (FileUploadException e) {
e.printStackTrace();
}
}