zoukankan      html  css  js  c++  java
  • Java文件下载:如何编码文件名称以及如何设置HttpServletResponse

    在下载文件时,经常遇到文件名乱码等问题。
    本文说明如何编码文件名,以及如何设置HttpServletResponse对象。

    1,如何编码文件名

    String userAgent = request.getHeader("User-Agent");
    if (/* IE 8 至 IE 10 */
        userAgent.toUpperCase().contains("MSIE") ||
        /* IE 11 */
        userAgent.contains("Trident/7.0")) {
        fileName = URLEncoder.encode(fileName, "UTF-8");
    } else if (userAgent.toUpperCase().contains("MOZILLA") || 
    userAgent.toUpperCase().contains("CHROME")) { fileName = new String(fileName.getBytes(), "ISO-8859-1"); } else { fileName = URLEncoder.encode(fileName, "UTF-8"); }

    2,如何设置HttpServletResponse对象 以下代码以Excel文件下载为例。

    response.setCharacterEncoding("UTF-8");
    response.setContentType("application/vnd.ms-excel");
    response.addHeader("Content-Disposition", "attachment; filename=" + fileName);
  • 相关阅读:
    C++实现base64编解码
    使用matplotlib绘制3D函数图像
    C++分治策略实现快速排序
    C++分治策略实现二分搜索
    C++生成随机数
    eBay 表结构
    mysql 流程函数
    无限极分类
    PHP 导出 Excell
    js
  • 原文地址:https://www.cnblogs.com/yitouniu/p/7691722.html
Copyright © 2011-2022 走看看