Java导出txt文件的方法
本文实例讲述了Java导出txt文件的方法。分享给大家供大家参考。具体如下:
例子一
/**
*export导出文件
*/
@RequestMapping(value="/grab/export/csv",method={RequestMethod.GET})
publicvoidexportCsv(HttpServletRequestrequest,HttpServletResponseresponse){
StringuserId=ServletRequestUtils.getStringParameter(request,"userId","test");
ModelAndViewmav=newModelAndView();
SqlVideoListsqlVideoList=newSqlVideoList();
List<VideoListModel>list=newArrayList<VideoListModel>();
try{
list=sqlVideoList.selectSuccessDate(userId);
}catch(SQLExceptione){
//TODOAuto-generatedcatchblock
e.printStackTrace();
}
//导出txt文件
response.setContentType("text/plain");
StringfileName="videolist";
try{
fileName=URLEncoder.encode("videolist","UTF-8");
}catch(UnsupportedEncodingExceptione1){
//TODOAuto-generatedcatchblock
e1.printStackTrace();
}
response.setHeader("Content-Disposition","attachment;filename="+fileName+".txt");
BufferedOutputStreambuff=null;
StringBufferwrite=newStringBuffer();
Stringenter="\r\n";
ServletOutputStreamoutSTr=null;
try{
outSTr=response.getOutputStream();//建立
buff=newBufferedOutputStream(outSTr);
//把内容写入文件
if(list.size()>0){
for(inti=0;i<list.size();i++){
write.append(list.get(i).getUrl()+",");
write.append(list.get(i).getTitle());
write.append(enter);
}
}
buff.write(write.toString().getBytes("UTF-8"));
buff.flush();
buff.close();
}catch(Exceptione){
e.printStackTrace();
}finally{
try{
buff.close();
outSTr.close();
}catch(Exceptione){
e.printStackTrace();
}
}
}
例子二:
/**
*导出VIP兑换码。
*@throwsUnsupportedEncodingException
*/
@RequestMapping(value="/{exchangeId}/{packageId}/export",method=RequestMethod.GET)
publicvoidwriteToTxt(@PathVariableStringexchangeId,@PathVariableStringpackageId,HttpServletRequestrequest,HttpServletResponseresponse)throwsUnsupportedEncodingException{
StringschoolId=this.getSchoolId(request);//网校ID
//获取网校的VIP套餐相应的兑换码
VipCodeExampleexample=newVipCodeExample();
example.createCriteria().andSchoolIdEqualTo(schoolId).andPackageIdEqualTo(packageId).andExchangeIdEqualTo(exchangeId);
List<VipCode>vipCodes=vipExchangeManager.getVipCode(example);
if(vipCodes.size()>0){
response.setContentType("text/plain");//一下两行关键的设置
response.addHeader("Content-Disposition",
"attachment;filename="+java.net.URLEncoder.encode(vipCodes.get(0).getName(),"UTF-8")+".txt");
//filename指定默认的名字
VipCodevipcode=newVipCode();
BufferedOutputStreambuff=null;
StringBufferwrite=newStringBuffer();
Stringtab="";
Stringenter="\r\n";
ServletOutputStreamoutSTr=null;
try{
outSTr=response.getOutputStream();//建立
buff=newBufferedOutputStream(outSTr);
for(inti=0;i<vipCodes.size();i++){
vipcode=vipCodes.get(i);
write.append(i+1);//序号
write.append(tab);
write.append(vipcode.getExchangeCode());
write.append(tab);
if("normal".equals(vipcode.getStatus())){
write.append("正常");
}else{
write.append("已兑换");
}
write.append(enter);
}
buff.write(write.toString().getBytes("UTF-8"));
buff.flush();
buff.close();
}catch(Exceptione){
e.printStackTrace();
}finally{
try{
buff.close();
outSTr.close();
}catch(Exceptione){
e.printStackTrace();
}
}
}
}
希望本文所述对大家的java程序设计有所帮助。