文件下載在windows跟linux及不同瀏覽器下的處理(中文名亂碼)

          在進行文件下載時liunx下出現中文文件名亂碼,windows下卻沒有.可能是不同操作系統的編碼方式不同?(含糊不清的說法),用
          Properties initProp = new Properties(System.getProperties());
          System.out.println(prop.getProperty("file.encoding"));能得到編碼方式都是UTF-8
          后來發現用
          fileName  = new String(fileName.getBytes("UTF-8"), "iso-8859-1");不管linux還是windows 下用火狐都是顯示正常的,IE下卻顯示亂碼,所以問題出在瀏覽器,得在程序中加入判斷(分別處理firefox跟Ie):
          //判斷是否是使用IE的方法
          String userAgent = request.getHeader("User-Agent");
          boolean isIE = false;
          //userAgent.toLowerCase().indexOf("msie")
          if(userAgent.indexOf("MSIE") > 0){
          isIE = true;
          }
          if(isIE){
          fileName  = new String(fileName.getBytes("gb2312"), "iso-8859-1");
          }else{
          fileName  = new String(fileName.getBytes("UTF-8"), "iso-8859-1");
          }

          posted on 2011-08-16 15:43 smallfa 閱讀(1122) 評論(1)  編輯  收藏 所屬分類: linux-ubuntu/redhat

          評論

          # re: 文件下載在windows跟linux及不同瀏覽器下的處理(中文名亂碼) 2013-05-28 14:36 theOne

          按照你的方法的確解決了問題,留言感謝  回復  更多評論   

          <2013年5月>
          2829301234
          567891011
          12131415161718
          19202122232425
          2627282930311
          2345678

          導航

          統計

          公告

          smallfa
          博客園
          C++博客
          博客生活
          Blogjava
          足球博客
          微博
          Redsaga

          常用鏈接

          留言簿(2)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          相冊

          Ajax

          Blogs

          DB

          java

          Open source

          ORM

          Tools/Help

          vedio Tech

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 中江县| 申扎县| 台东县| 家居| 临西县| 织金县| 凤台县| 美姑县| 宜兴市| 沙洋县| 游戏| 新建县| 文昌市| 道孚县| 隆德县| 哈巴河县| 商丘市| 广南县| 囊谦县| 嘉义县| 清水河县| 溧阳市| 青龙| 马关县| 舟曲县| 乐昌市| 通许县| 无锡市| 鄯善县| 沂源县| 神池县| 平谷区| 蓬安县| 同江市| 察隅县| 临沂市| 马龙县| 桦南县| 嘉祥县| 临沧市| 太白县|