当前位置:  技术问答>java相关

如何隐藏下载文件的实际地址,用id来取代地址

    来源: 互联网  发布时间:2015-06-24

    本文导语:  tool.zip 然后在some.jsp中用id=request.getParameter("id");这样我通过id去查数据库,得到实际地址,然后出现下载对话框。 可是虽然现在我得到了实际地址,但无法将所得到的实际地址送出去,来使之出现下载对话框。 ...

tool.zip
然后在some.jsp中用id=request.getParameter("id");这样我通过id去查数据库,得到实际地址,然后出现下载对话框。
可是虽然现在我得到了实际地址,但无法将所得到的实际地址送出去,来使之出现下载对话框。

|
可以参考http://www.csdn.net/Expert/topic/484/484413.shtm
在some.jsp页面中加入如下代码即可实现下载:
(首先你得先通过id获取文件的物理路径strFullPath)
java.io.File objFile; //文件对象 
java.io.RandomAccessFile objFileReader;
byte[] byteBuffer = new byte[4096];
int intLength; //实际读出的字符数

//创建文件对象 
//strFullPath为文件的物理路径
objFile = new java.io.File(strFullPath);

//判断文件是否存在 
if(objFile.exists()){//文件存在
    //获取文件长度
    iFileSize = (int)objFile.length();
    
    //设置HTTP输出头参数
    response.setHeader("Content-Disposition", "attachment; filename=" + sFileName);
    response.setHeader("Connection", "close");
    response.setHeader("Content-Type", "application/octet-stream"); 
    response.setContentLength(iFileSize);
    
    //创建读文件对象 
    objFileReader = new java.io.RandomAccessFile(objFile,"r");
    
    //读文件内容
    out.clear();
    while((intLength = objFileReader.read(byteBuffer)) != -1){ 
        //输出 
        out.write(new String(byteBuffer,0,intLength,"ISO-8859-1"));
    } 
    
    //关闭读文件对象 
    objFileReader.close(); 
}  

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 隐藏andriod 应用app启动图标的几种方法
  • 隐藏文件问题
  • Linux 如何隐藏分区阿??
  • 如何在DOS下去掉文件隐藏和只读属性阿?
  • Android 显示和隐藏输入法实现代码
  • jquery控制css元素的display(显示与隐藏)属性
  • jquery控制css的display属性(显示与隐藏)
  • mysql iis7站长之家
  • 如何把main函数隐藏到动态链接库中?(如MFC的做法?)
  • 如何获取GtkWidget显示与隐藏状态?
  • 怎么隐藏Linux和Mysql的版本信息
  • jquery显示与隐藏div的方法示例
  • Android中隐藏标题栏和状态栏的方法
  • 死机了,救命.隐藏文件,怎样copy????
  • 怎样在使用curses字符串输出函数或字符输出函数时,隐藏光标
  • 怎么看LINUX下的隐藏文件
  • qt如何隐藏一个窗口?
  • grep不查找隐藏文件的方法
  • 如何恢复被sfdisk隐藏的分区?急!解决后加分!
  • jquery实现div层的隐藏或显示
  • 在iframe中隐藏横向滚动条的方法大全


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3