51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 1355|回复: 3
打印 上一主题 下一主题

使用postman测试下载xls文件,下载的文件名出现中文乱码

[复制链接]
  • TA的每日心情
    无聊
    4 天前
  • 签到天数: 530 天

    连续签到: 2 天

    [LV.9]测试副司令

    跳转到指定楼层
    1#
    发表于 2022-2-24 11:16:33 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    1测试积点
    使用postman测试下载xls文件,下载的文件名出现中文乱码
    1. public void exportTeam(AdminInfo adminInfo, SelectTeamDTO dto, HttpServletRequest request, HttpServletResponse response) {

    2.         //导出时取消分页
    3.         dto.setPageSize(Integer.MAX_VALUE);
    4.         dto.setPageIndex(1);

    5.         //查询数据
    6.         BasePageResponse<SelectTeamVO> teamList = teamManageService.selectTeamPage(adminInfo, dto.getTeamName(), dto.getPageIndex(), dto.getPageSize());
    7.         List<SelectTeamVO> records = teamList.getRecords();
    8.         List<SelectTeamVO> vos = new ArrayList<>();

    9.         //设置属性
    10.         records.forEach(p -> {
    11.             SelectTeamVO vo = new SelectTeamVO();
    12.             BeanUtils.copyProperties(p, vo);
    13.             vos.add(vo);
    14.         });

    15.         String sheetName = ExportSheetNameEnum.team_sheet;
    16.         String fileName = sheetName + ".xls";
    17.         String[] title = ExportTitleEnum.teamList_title;

    18.         String[][] values = new String[vos.size()][title.length];
    19.         for (int i = 0; i < vos.size(); i++) {
    20.             values[i] = new String[title.length];
    21.             SelectTeamVO vo = vos.get(i);
    22.             values[i][0] = vo.getTeamName();
    23.             values[i][1] = vo.getTeamType();
    24.             values[i][2] = vo.getProjectName();
    25.             values[i][3] = vo.getLeaderName();
    26.             values[i][4] = vo.getTeamTypeNo();
    27.         }

    28.        //初始化表格设置
    29.         Map<String, Object> map = ExcelUtil.exportFirstSet(sheetName, title);
    30.         HSSFRow row = (HSSFRow) map.get("HSSFRow");
    31.         HSSFSheet sheet = (HSSFSheet) map.get("HSSFSheet");
    32.         HSSFWorkbook wb = (HSSFWorkbook) map.get("HSSFWorkbook");
    33.         //创建内容
    34.         for (int i = 0; i < values.length; i++) {
    35.             row = sheet.createRow(i + 1);
    36.             for (int j = 0; j < values[i].length; j++) {
    37.                 row.createCell(j).setCellValue(values[i][j]);
    38.             }
    39.         }
    40.         //设置样式
    41.         ExcelUtil.setHeightWidth(values, null, null, row, sheet);
    42.         //响应到客户端
    43.         try {
    44.             ExcelUtil.setResponseHeader(response, request, fileName);
    45.             OutputStream os = response.getOutputStream();
    46.             wb.write(os);
    47.             os.flush();
    48.             os.close();
    49.         } catch (Exception e) {
    50.             e.printStackTrace();
    51.         }

    52.     }
    复制代码


    分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

  • TA的每日心情
    奋斗
    1 小时前
  • 签到天数: 1522 天

    连续签到: 1 天

    [LV.Master]测试大本营

    2#
    发表于 2022-2-25 10:22:11 | 只看该作者
    编码格式的问题
    回复

    使用道具 举报

  • TA的每日心情
    奋斗
    4 小时前
  • 签到天数: 2819 天

    连续签到: 1 天

    [LV.Master]测试大本营

    3#
    发表于 2022-2-25 15:39:51 | 只看该作者
    一般是编码格式问题
    回复

    使用道具 举报

  • TA的每日心情
    开心
    2022-3-18 16:45
  • 签到天数: 10 天

    连续签到: 2 天

    [LV.3]测试连长

    4#
    发表于 2022-2-25 16:28:56 | 只看该作者
    UFT-8
    回复

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-11-25 11:29 , Processed in 0.062334 second(s), 22 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表