国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

file批量上傳文件,upload.parseRequest(request)返回空

2019-11-10 20:25:59
字體:
來源:轉載
供稿:網友

1、用 file標簽實現,加上multiple屬性可以多選,但是IE瀏覽器不支持該屬性

      頁面代碼:

<form action="uploadfile.action" method="post" enctype="multipart/form-data">         <table>               <tr>               <td><input type="file" id ="file" name="file" multiple="multiple" size="40"></td>             </tr>               <tr>               <td colspan="2" align="center"><input type="submit" value="上傳"/></td>             </tr>           </table></form>

       后臺處理:

      items = upload.parseRequest(request);返回空值,解決方法分為3步

1)、增加一個類

public class MyRequestParser extends JakartaMultiPartRequest {public void parse(HttpServletRequest  servletRequest,   String   saveDir) throws IOException {} }

2)、修改struts.xml

<struts>    <!-- struts2.3.4版本 --><!--     <bean type= "org.apache.struts2.dispatcher.multipart.MultiPartRequest"           name= "myRequestParser" class= "actiontest.MyRequestParser"           scope= "default" optional= "true " />     <constant name= "struts.multipart.handler" value= "myRequestParser" /> -->        <!-- struts2.3.15.1 以后的版本 -->    <bean type="org.apache.struts2.dispatcher.multipart.MultiPartRequest"             name="myMultiPartRequest" class="actiontest.MyRequestParser"             scope="default" optional="true"/>      <constant name="struts.multipart.parser" value="myMultiPartRequest" /> 

3、

    public String uploadFiles() throws IOException {    request.setCharacterEncoding("UTF-8");     PRintWriter out = null;        FileItemFactory factory = new DiskFileItemFactory();        ServletFileUpload upload = new ServletFileUpload(factory);        File directory = null;        List<FileItem> items = new ArrayList();        try {

            //該句代碼在執行時返回的items為空            items = upload.parseRequest(request);            // 得到所有的文件            Iterator<FileItem> it = items.iterator();            while (it.hasNext()) {                FileItem fItem = (FileItem) it.next();                String fName = "";                Object fValue = null;                if (fItem.isFormField()) { // 普通文本框的值                    fName = fItem.getFieldName();                    fValue = fItem.getString("UTF-8");                } else { // 獲取上傳文件的值                        fName = fItem.getFieldName();                        fValue = fItem.getInputStream();                        String name = fItem.getName();                        if(name != null && !("".equals(name))) {                            name = name.substring(name.lastIndexOf(File.separator) + 1);                                                        directory = new File("d://test");                            directory.mkdirs();                                String filePath = ("d://test")+ File.separator + name;                                                        InputStream is = fItem.getInputStream();                            FileOutputStream fos = new FileOutputStream(filePath);                            byte[] buffer = new byte[1024];                            while (is.read(buffer) > 0) {                                    fos.write(buffer, 0, buffer.length);                            }                            fos.flush();                            fos.close();                            }                        }                    }                } catch (Exception e) {                return "error";                }        return "success";      }

      


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 穆棱市| 五原县| 高雄县| 平塘县| 章丘市| 高雄市| 台江县| 满城县| 深泽县| 应用必备| 南康市| 望谟县| 鄢陵县| 梁平县| 天水市| 肇源县| 金溪县| 福安市| 多伦县| 新丰县| 绥化市| 西贡区| 桃源县| 赞皇县| 徐州市| 定陶县| 梁河县| 长阳| 射阳县| 龙泉市| 洞口县| 丰顺县| 炎陵县| 淅川县| 建宁县| 会同县| 买车| 陈巴尔虎旗| 朝阳县| 宾川县| 桐梓县|