本文实例讲述了Java导出txt文件的方法。分享给大家供大家参考。具体如下:
例子一
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
|
/**
* export导出文件
*/
@RequestMapping
(value=
"/grab/export/csv"
,method={RequestMethod.GET})
public
void
exportCsv(HttpServletRequest request,HttpServletResponse response){
String userId = ServletRequestUtils.getStringParameter(request,
"userId"
,
"test"
);
ModelAndView mav=
new
ModelAndView();
SqlVideoList sqlVideoList =
new
SqlVideoList();
List<VideoListModel> list =
new
ArrayList<VideoListModel>();
try
{
list = sqlVideoList.selectSuccessDate(userId);
}
catch
(SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
//导出txt文件
response.setContentType(
"text/plain"
);
String fileName=
"videolist"
;
try
{
fileName = URLEncoder.encode(
"videolist"
,
"UTF-8"
);
}
catch
(UnsupportedEncodingException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
response.setHeader(
"Content-Disposition"
,
"attachment; filename="
+ fileName +
".txt"
);
BufferedOutputStream buff =
null
;
StringBuffer write =
new
StringBuffer();
String enter =
"\r\n"
;
ServletOutputStream outSTr =
null
;
try
{
outSTr = response.getOutputStream();
// 建立
buff =
new
BufferedOutputStream(outSTr);
//把内容写入文件
if
(list.size()>
0
){
for
(
int
i =
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
(Exception e) {
e.printStackTrace();
}
finally
{
try
{
buff.close();
outSTr.close();
}
catch
(Exception e) {
e.printStackTrace();
}
}
}
|
例子二:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
|
/**
* 导出VIP兑换码。
* @throws UnsupportedEncodingException
*/
@RequestMapping
(value =
"/{exchangeId}/{packageId}/export"
, method = RequestMethod.GET)
public
void
writeToTxt(
@PathVariable
String exchangeId,
@PathVariable
String packageId, HttpServletRequest request,HttpServletResponse response)
throws
UnsupportedEncodingException {
String schoolId =
this
.getSchoolId(request);
// 网校ID
// 获取网校的VIP套餐相应的兑换码
VipCodeExample example=
new
VipCodeExample();
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指定默认的名字
VipCode vipcode=
new
VipCode();
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 < 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
(Exception e) {
e.printStackTrace();
}
finally
{
try
{
buff.close();
outSTr.close();
}
catch
(Exception e) {
e.printStackTrace();
}
}
}
}
|