上傳及下載

導入腳本接口
 * @param request
 */
@RequestMapping(value = "/importRule.json")
@ResponseBody
public void importRule(HttpServletRequest request) {
    InputStream inputStream = null;
    InputStreamReader inputStreamReader = null;
    BufferedReader bufferedReader = null;
    StringBuffer stringBuffer = new StringBuffer("");
    //將當前上下文初始化給  CommonsMutipartResolver (多部分解析器)
    CommonsMultipartResolver multipartResolver = new CommonsMultipartResolver(
            request.getSession().getServletContext());
    //檢查form中是否有enctype="multipart/form-data"
    if(multipartResolver.isMultipart(request)) {
        //request變成多部分request
        MultipartHttpServletRequest multiRequest=(MultipartHttpServletRequest)request;
        //獲取multiRequest 中所有的文件名
        Iterator iter=multiRequest.getFileNames();
        while(iter.hasNext()) {
            //一次遍歷所有文件
            MultipartFile file=multiRequest.getFile(iter.next().toString());
            if(file!=null) {
                try {
                    inputStream = file.getInputStream();
                    inputStreamReader = new InputStreamReader(inputStream);
                    bufferedReader = new BufferedReader(inputStreamReader);
                    String content = "";
                    while ((content = bufferedReader.readLine()) != null) {
                        stringBuffer.append(content); // 一次讀入一行數據
                    }
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }
    }
    List<RuleForm> ruleFormList = JSON.parseArray(new String(stringBuffer),RuleForm.class);

}
public static void exportJsonToTxt(HttpServletResponse response, Object result, Logger logger) {
    String name = null;
    PrintWriter printWriter = null;
    try {
        name = URLEncoder.encode("腳本", "UTF-8");
        response.setHeader("Content-Disposition", "attachment;filename="+name);
        response.setContentType("application/force-download");//應用程序強制下載
        response.setCharacterEncoding("UTF-8");
        printWriter = response.getWriter();
        String content = JSONObject.toJSONString(result, nameFilter, SerializerFeature.DisableCircularReferenceDetect);
        printWriter.println(content);
    } catch (Exception e) {
        logger.error("printWriter輸出json失敗!", e);
    } finally {
        if (printWriter != null) {
            try {
                printWriter.close();
            } catch (Exception e) {
                logger.error("out.close()出現異常", e);
            }
        }
    }
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章