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

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

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

    Thinking

    快樂編程,開心生活
    posts - 21, comments - 27, trackbacks - 0, articles - -5
      BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

    文件下載中的漢字編碼問題

    Posted on 2007-02-07 14:32 lixw 閱讀(248) 評論(0)  編輯  收藏
    ?1 public ? void ?doDownLoad(HttpServletRequest?request,?HttpServletResponse?response,?
    ?2 ????????????String?absolutePath)? {
    ?3 ????????
    ?4 ???????? // 設(shè)置響應(yīng)頭信息
    ?5 ????????response.setContentType( " application/octet-stream;charset=UTF-8 " );?
    ?6 ????????log.debug( " GET:? " ? + ?absolutePath);
    ?7 ????????
    ?8 ????????String?str? = ?FilePathParseUtil.getFileNameByPath(absolutePath);
    ?9 ???????? // 調(diào)用自定義的編碼函數(shù),解決不同瀏覽器上對漢字編碼的處理
    10 ????????str? = ? this .encodeFileName(request,?str) == null ? str: this .encodeFileName(request,?str);
    11 ???????? // 設(shè)置response頭信息,從而顯示正確的文件名,并彈出另存對話框
    12 ????????response.setHeader( " Content-Disposition " ,? " attachment;?filename= " ?
    13 ???????????????? + ?str);
    14 ????????OutputStream?out? = ? null ;
    15 ???????? try {
    16 ???????????? // 從response得到輸出流,從而向客戶端寫出文件
    17 ????????????out? = ?response.getOutputStream();
    18 ????????}
    catch (IOException?e) {
    19 ????????????log.error( " output?stream?is?null " );
    20 ????????????e.printStackTrace();
    21 ????????}

    22 ???????? this .doDownLoad(out,?absolutePath);
    23 ????}

    24 ????
    25 ???? /**
    26 ?????*?根據(jù)不同瀏覽器對文件名進(jìn)行編碼
    27 ?????*? @param ?request?客戶端請求
    28 ?????*? @param ?fileName?文件名
    29 ?????*? @return ?編碼后的文件名
    30 ????? */

    31 ???? public ?String?encodeFileName(HttpServletRequest?request,?String?fileName) {???
    32 ????????String?agent? = ?request.getHeader( " USER-AGENT " );
    33 ???????? try {
    34 ???????????? if ?( null ? != ?agent? && ? - 1 ? != ?agent.indexOf( " MSIE " ))? {???
    35 ???????????????? return ?URLEncoder.encode(fileName,? " UTF-8 " );???
    36 ????????????}
    else ? if ?( null ? != ?agent? && ? - 1 ? != ?agent.indexOf( " Mozilla " ))? {???
    37 ???????????????? return ? " =?UTF-8?B? " +
    38 ???????????????????????? new ?String(
    39 ????????????????????????????????Base64.encodeBase64(
    40 ????????????????????????????????????fileName.getBytes( " UTF-8 " )
    41 ????????????????????????????????)
    42 ????????????????????????)? + ? " ?= " ;???
    43 ????????????}
    ? else ? {???
    44 ???????????????? return ?fileName;???
    45 ????????????}

    46 ????????}
    catch (UnsupportedEncodingException?e) {
    47 ???????????? return ? null ;
    48 ????????}

    49 ????}
    ??

    只有注冊用戶登錄后才能發(fā)表評論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 国产AV无码专区亚洲AV麻豆丫| 最近免费中文字幕视频高清在线看 | 好爽又高潮了毛片免费下载 | 亚洲看片无码在线视频| jlzzjlzz亚洲乱熟在线播放| 青青草免费在线视频| 永久在线观看免费视频| 牛牛在线精品观看免费正| 亚洲精品天堂无码中文字幕| 亚洲欧洲精品一区二区三区| 亚洲一区无码中文字幕| 全部免费毛片在线| 午夜一区二区免费视频| 韩国免费一级成人毛片| 人妻丰满熟妇无码区免费| aaa毛片视频免费观看| 一级午夜a毛片免费视频| 久久亚洲精品无码网站| 亚洲日产乱码一二三区别| 亚洲国产精品综合久久网各| 亚洲综合男人的天堂色婷婷| 亚洲AV午夜福利精品一区二区| 亚洲精品国产精品乱码不卡| 免费a在线观看播放| 国产猛烈高潮尖叫视频免费| 成年大片免费视频| 在线播放免费人成视频在线观看| 91成人免费在线视频| 四虎在线视频免费观看视频| 亚洲免费在线播放| 182tv免费观看在线视频 | 亚洲免费在线观看视频| 亚洲精品午夜久久久伊人| 亚洲精品乱码久久久久久下载| 亚洲制服中文字幕第一区| 日本免费福利视频| 国产真实伦在线视频免费观看| 日本高清免费不卡视频| 国产无遮挡吃胸膜奶免费看视频| 国产色婷婷精品免费视频| www.亚洲色图|