日期:2014-05-19  浏览次数:20861 次

JSP问题,在FORM里设置了enctype="multipart/form-data"后用request不能取得表单元素的值
JSP问题,在FORM里设置了enctype="multipart/form-data"后用request不能取得表单元素的值
因为我要实现上传,所以表单要设enctype="multipart/form-data",但这样做的话,就不能用request.getParmeter("XXX")来取值了,有什么解决的方法呢?

  就是不能取到,用了enctype="multipart/form-data"后,用request.getParameter("XXX")取出来的值是null,如果去掉enctype="multipart/form-data",取出来就正常了

------解决方案--------------------
上传文件建议使用Common-FileUpload这个开源组件来做,不使用开源的文件上传组件一定遇到你的那个问题的
------解决方案--------------------
Java code
List fileItems = upload.parseRequest(request);   
  Iterator iter = fileItems.iterator();   
  while (iter.hasNext()) {   
  FileItem item = (FileItem) iter.next();
  item.getInputStream();
  if (!item.isFormField()) {
  //文件流
  }else{
  //非文件流   
  String value=item.getString();
  value = new String(value.getBytes("ISO-8859-1"),"UTF-8");
    
  }