我服务器的D盘下有个1.txt文件<a href="D:/1.txt">下载文件</a>这样直接点击下载文件会在网页上直接打开了这个txt文件,要用到右键点击选另存为的时候才能下载如何能通过这样的方式,用左键单击就默认是下载这个txt文件呢
解决方案 »
- aptana除了IE,怎么增加别的浏览器
- 求救数据导出为pdf
- 求助!!!JSP查询~~~~
- 带有ewebeditor编辑器的表单验证问题
- firefox2.0共享同一个cookie问题
- 在线跪求java.lang.OutOfMemoryError: Java heap space问题
- 数据保存问题
- SQL:如何获得当前日期的上一个月份?
- 如何利用 session 对象来控制 用户对各页面的浏览,来着有分 !!!!!!
- 没人知道吗?你们在搞jsp开发的时候,遇见过要在jsp页面上写方法的时候吗?告诉我你们的格式,好不好?
- 怎么让tomcat启动定时执行一方法
- hibernate.hbm2ddl.auto 属性问题
1、把<a href="D:/1.txt">修改为<a href="#" onclick="javascript:download(xxxx)";
2、做一个filter,凡是请求特定目录,不管任何文件,都直接重定向下载
<a href="#" onClick='SaveToLocal()'>temp.txt</a>
<iframe id="ModifyCameraForm" name="ModifyCameraForm" src="about:blank" style="display:none;" width="1" height="1"></iframe>
js代码:
function SaveToLocal()
{
//var src = "bigpicurl.jsp?path=http://172.12.52.2:8080/demohttp/images/1.jpg";
var src = "bigpicurl.jsp?path=http://172.12.52.2:8080/demohttp/temp.txt";
document.getElementById("ModifyCameraForm").src = src;
}bigpicurl.jsp页面:
<%@ page contentType="text/html; charset=gb2312"%>
<%@ page language="java" import="java.io.IOException,java.io.FileOutputStream,java.io.File,java.io.InputStream,java.net.URL,java.net.URLConnection,java.io.OutputStream" pageEncoding="gb2312"%><html>
<head>
<title>Index</title>
</head>
<body>
<%
//request.setCharacterEncoding("gb2312");
String path = request.getParameter("path"); //ftp路径url//
path = new String(path.getBytes("iso-8859-1"),"UTF-8"); response.setHeader("Content-Disposition", "attachment; filename=1.txt;"); //modify20100303
String strUrl = path;
URLConnection uc = null;
System.out.println(strUrl);
try {
URL url = new URL(strUrl);
uc = url.openConnection();
uc.setRequestProperty("User-Agent",
"Mozilla/4.0 (compatible; MSIE 5.0; Windows XP; DigExt)");
//uc.setReadTimeout(30000);
//获取图片长度
//System.out.println("Content-Length: "+uc.getContentLength());
//获取文件头信息
//System.out.println("Header"+uc.getHeaderFields().toString());
// if (uc == null)
// return 0;
InputStream ins = uc.getInputStream();
byte[] str_b = new byte[1024];
int byteRead=0;
String[] images=strUrl.split("/");
String imagename=images[images.length-1];
OutputStream fos = response.getOutputStream();
while ((byteRead=ins.read(str_b)) > 0) {
fos.write(str_b,0,byteRead);
};
fos.flush();
fos.close();
} catch (Exception e) {
e.printStackTrace();
//log.error("获取网页内容出错");
}finally{
uc = null;
}%>[/code]原来是下图片的,现在给你下个1.txt也是好用的。我试过了。
注意:目录结构为demohttp/temp.txt。即把page.html,temp.txt,bigpicurl.jsp放在同一个目录,就可以用了。