JAVA下载TXT文件到本地,这一个方法完全能够解决
2013-12-19 12:54
621 查看
public String selectBmb() throws Exception {
String src = SystemConfig.getUploadPath() + "text.txt";
String xsxm = this.formBean.getString("PHONE");
String cxmm = this.formBean.getString("cxmm");
java.io.File f = new java.io.File(src);
BufferedWriter bw = null;
bw = new BufferedWriter(new FileWriter(f));
// 写入文件
bw.write(xsxm + "\r\n" + cxmm);
bw.flush();
bw.close();
// 下载打开文件
String filePath = src;
String fileName = "保存密码";
//boolean isInline = false;
out.clear();
this.pageWrapper.response.reset();
fileName = "保存密码" + ".txt";
java.io.File f1 = new java.io.File(filePath);
this.pageWrapper.response.setContentType("application/x-download");
this.pageWrapper.response.setHeader(
"Content-Disposition",
"attachment;filename="
+ java.net.URLEncoder.encode(fileName, "UTF8"));
this.pageWrapper.response.setContentLength((int) f1.length()); // ?
// 设置下载内容大小?
if (fileName != null && filePath != null) {
try {
if (f.exists() && f.canRead()) {
//String mimetype = null;
byte[] buffer = new byte[4096]; // ? 缓冲区
BufferedOutputStream output = null;
BufferedInputStream input = null;
try {
output = new BufferedOutputStream(
this.pageWrapper.response.getOutputStream());
input = new BufferedInputStream(new FileInputStream(f));
int n = (-1);
while ((n = input.read(buffer, 0, 4096)) > -1) {
output.write(buffer, 0, n);
}
this.pageWrapper.response.flushBuffer();
} catch (Exception e) {
} // ? 用户可能取消了下载
finally {
if (input != null)
input.close();
if (output != null)
output.close();
}
}
} catch (Exception ex) {
ex.printStackTrace();
}
}
return null;
}
String src = SystemConfig.getUploadPath() + "text.txt";
String xsxm = this.formBean.getString("PHONE");
String cxmm = this.formBean.getString("cxmm");
java.io.File f = new java.io.File(src);
BufferedWriter bw = null;
bw = new BufferedWriter(new FileWriter(f));
// 写入文件
bw.write(xsxm + "\r\n" + cxmm);
bw.flush();
bw.close();
// 下载打开文件
String filePath = src;
String fileName = "保存密码";
//boolean isInline = false;
out.clear();
this.pageWrapper.response.reset();
fileName = "保存密码" + ".txt";
java.io.File f1 = new java.io.File(filePath);
this.pageWrapper.response.setContentType("application/x-download");
this.pageWrapper.response.setHeader(
"Content-Disposition",
"attachment;filename="
+ java.net.URLEncoder.encode(fileName, "UTF8"));
this.pageWrapper.response.setContentLength((int) f1.length()); // ?
// 设置下载内容大小?
if (fileName != null && filePath != null) {
try {
if (f.exists() && f.canRead()) {
//String mimetype = null;
byte[] buffer = new byte[4096]; // ? 缓冲区
BufferedOutputStream output = null;
BufferedInputStream input = null;
try {
output = new BufferedOutputStream(
this.pageWrapper.response.getOutputStream());
input = new BufferedInputStream(new FileInputStream(f));
int n = (-1);
while ((n = input.read(buffer, 0, 4096)) > -1) {
output.write(buffer, 0, n);
}
this.pageWrapper.response.flushBuffer();
} catch (Exception e) {
} // ? 用户可能取消了下载
finally {
if (input != null)
input.close();
if (output != null)
output.close();
}
}
} catch (Exception ex) {
ex.printStackTrace();
}
}
return null;
}
相关文章推荐
- Java IO是怎么操作的?写一下给一个文件地址,读/写.txt文件的方法
- Java读取UTF-8格式txt文件第一行出现乱码——问号“?”及解决;Java读带有BOM的UTF-8文件乱码原因及解决方法
- JAVA文件下载,IE不提示下载,直接打开的解决方法
- Java读取UTF-8格式txt文件第一行出现乱码——问号“?”及解决;Java读带有BOM的UTF-8文件乱码原因及解决方法
- Java读取UTF-8格式txt文件第一行出现乱码——问号“?”及解决;Java读带有BOM的UTF-8文件乱码原因及解决方法
- javabean操作文件正确,但是Jsp调用javabean时文件路径出错问题解决之JavaBean访问本地文件实现路径无关实现方法
- Java读取UTF-8格式txt文件第一行出现乱码——问号“?”及解决;Java读带有BOM的UTF-8文件乱码原因及解决方法
- java下载文件中文乱码情况解决方法
- 用java打开一个本地文件的方法
- java方法客户端下载服务器上的文件到本地
- Java读取UTF-8格式txt文件第一行出现乱码——问号“?”及解决;Java读带有BOM的UTF-8文件乱码原因及解决方法
- Spring4下载f.txt文件解决方法
- 【Servlet+Struts2】文件下载时抛出java.lang.IllegalStateException异常的解决方法
- java一个文件只能有一个公有类的解决方法。 用公有静态内部类。 public static。 类似于C++的命令空间。
- tomcat下载文件时,URL含有文字参数与空格参数出错(java.io.FileNotFoundException错误) 解决方法(转)
- java下载文件成功但报错的解决方法
- Java中从txt文件中读取和存储内容出现乱码的解决方法
- Java读取UTF-8格式txt文件第一行出现乱码——问号“?”及解决;Java读带有BOM的UTF-8文件乱码原因及解决方法
- android:从互联网上下载txt文件时出现NetworkOnMainThreadException的解决方法
- java方法客户端下载服务器上的文件到本地