<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    小菜毛毛技術分享

    與大家共同成長

      BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
      164 Posts :: 141 Stories :: 94 Comments :: 0 Trackbacks

    <%@ page import="java.io.File" %>
    <%@ page import="java.io.IOException" %>
    <%@ page import="java.io.OutputStream" %>
    <%@ page import="java.io.RandomAccessFile" %>
    <%!
        public void downloadFile(HttpServletRequest request, HttpServletResponse response, File file) throws IOException {

            RandomAccessFile raf = new RandomAccessFile(file, "r");
            java.io.FileInputStream fis = new java.io.FileInputStream(raf.getFD());
            response.setHeader("Server", "www.trydone.com");
            response.setHeader("Accept-Ranges", "bytes");
            long pos = 0;
            long len;
            len = raf.length();
            if (request.getHeader("Range") != null) {
                response.setStatus(HttpServletResponse.SC_PARTIAL_CONTENT);
                pos = Long.parseLong(request.getHeader("Range")
                        .replaceAll("bytes=", "")
                        .replaceAll("-", "")
                );
            }
            response.setHeader("Content-Length", Long.toString(len - pos));
            if (pos != 0) {
                response.setHeader("Content-Range", new StringBuffer()
                        .append("bytes ")
                        .append(pos)
                        .append("-")
                        .append(Long.toString(len - 1))
                        .append("/")
                        .append(len)
                        .toString()
                );
            }
            response.setContentType("application/octet-stream");
            response.setHeader("Content-Disposition", new StringBuffer()
                    .append("attachment;filename=\"")
                    .append(file.getName())
                    .append("\"").toString());
            raf.seek(pos);
            byte[] b = new byte[2048];
            int i;
            OutputStream outs = response.getOutputStream();
            while ((i = raf.read(b)) != -1) {
                outs.write(b, 0, i);
            }
            raf.close();
            fis.close();
        }

    %>
    <%
        String filePath = request.getParameter("file");
        filePath = application.getRealPath(filePath);
        File file = new File(filePath);
        downloadFile(request, response, file);
    %>

    posted on 2010-01-19 17:28 小菜毛毛 閱讀(879) 評論(0)  編輯  收藏 所屬分類: J2EE相關技術與框架
    主站蜘蛛池模板: 在线观看免费大黄网站| 成人免费无码大片a毛片| 亚洲精品无码成人片在线观看| 99久久国产亚洲综合精品| 国语成本人片免费av无码| 亚洲人成网站在线观看播放动漫 | 亚洲午夜精品一区二区麻豆| 成年人网站免费视频| 亚洲av片不卡无码久久| 免费电视剧在线观看| 亚洲AV成人精品日韩一区| 四虎免费永久在线播放| 一级毛片免费播放试看60分钟| 亚洲中文字幕在线观看| 99视频在线精品免费| 亚洲自国产拍揄拍| 免费亚洲视频在线观看| 香蕉视频在线免费看| 亚洲最大中文字幕| 日本免费一区尤物| 国产日韩在线视频免费播放| 亚洲va在线va天堂va四虎| 国产免费不卡视频| 国产精品亚洲综合一区在线观看| 亚洲午夜日韩高清一区| 91精品国产免费入口| 亚洲精品无码日韩国产不卡av| 亚洲国产精品成人久久蜜臀 | 中国人xxxxx69免费视频| 国产亚洲玖玖玖在线观看| 亚洲国产成人久久笫一页| 午夜精品免费在线观看| 亚洲熟妇成人精品一区| 国产亚洲一区区二区在线| 亚洲w码欧洲s码免费| 狠狠热精品免费观看| 91天堂素人精品系列全集亚洲| 免费无码一区二区三区蜜桃大| 国产一区二区三区免费观在线| 亚洲jizzjizz在线播放久| 在线亚洲人成电影网站色www|