`
飞天小女警
  • 浏览: 105563 次
  • 性别: Icon_minigender_2
  • 来自: 重庆
社区版块
存档分类
最新评论

java导出txt文件

阅读更多
  1.  第一种形式,是以流的开式直接response,适用于数据量不是很大的情况下。 
  2. 第二种形式,是先将要下载的文件写到后台的一个文件或者excel 中,然后再进行下载。

第一种实现:

private void writeCuHmToTxt(List<Object[]> list) throws Exception {  
		 HttpServletResponse response = this.getResponse();
		 response.reset();
		 this.getResponse().setContentType("text/plain");
		 String fileName = URLEncoder.encode("非移动用户", "UTF-8");
		 this.getResponse().setHeader("Content-Disposition","attachment; filename=" + fileName + ".txt");
			
	     BufferedOutputStream buff = null;   
	     StringBuffer write = new StringBuffer();   
	     //String tab = "  ";   
	     String enter = "\r\n";   
	     ServletOutputStream outSTr = null;   
	     try {   
	          outSTr = response.getOutputStream();  // 建立   
	          buff = new BufferedOutputStream(outSTr);   
	          for (int i = 0; i < list.size(); i++) {  
	        	  Object[] objs = list.get(i);
	              write.append(objs[1].toString() + enter);   
	          }   
	          buff.write(write.toString().getBytes("UTF-8"));   
	          buff.flush();   
	          buff.close();   
	     } catch (Exception e) {   
	         e.printStackTrace();   
	     } finally {   
             try {   
                 buff.close();   
                 outSTr.close();   
             } catch (Exception e) {   
                 e.printStackTrace();   
            }   
	    }   
	}

 第二种实现:

 

// 输出TXT   
    public static void writeToTxt(HttpServletRequest request, List list) {   
        FileOutputStream outSTr = null;   
        BufferedOutputStream Buff = null;    String path = request.getSession().getServletContext().getRealPath(   
                "upordown/down/model/magazinePub.txt");   
        String tab = "  ";   
        String enter = "\r\n";   
        MagazineBean magazine;   
        StringBuffer write ;   
        try {   
            outSTr = new FileOutputStream(new File(path));   
            Buff = new BufferedOutputStream(outSTr);   
            for (int i = 0; i < list.size(); i++) {   
               magazine = (MagazineBean) list.get(i);   
                write = new StringBuffer();   
                write.append("期刊名称:" + tab);   
                write.append(delNull(magazine.getTenet()) + enter);   
                write.append(enter);       
                Buff.write(write.toString().getBytes("UTF-8"));   
            }          
            Buff.flush();   
            Buff.close();   
      } catch (Exception e) {   
            e.printStackTrace();   
        } finally {   
            try {   
               Buff.close();   
                outSTr.close();   
            } catch (Exception e) {   
               e.printStackTrace();   
            }   
        }   
    }  

 

 

分享到:
评论
2 楼 piaoxue_x 2011-11-28  
冒昧的问一下,博主你是个妹纸吗?写的不错,顶你。。。。
1 楼 cl1154781231 2011-10-14  
非常好!谢谢!

相关推荐

Global site tag (gtag.js) - Google Analytics