报表服务器导出报表文件名乱码,excel 导出文件名乱码
因为经常要用到导出功能,之前因为文件名乱码,所以都用英文或是拼音缩写来代替,今天特意要接觉下这个问题。顺便记录下。望对小白有用。
/**
* 导出结算详情列表
* @return
*/
public void depositLogExport()
{
String title = "押金流水报表";
String excelName = "押金流水报表.xls";
OutputStream os = null;
try
{
int shopId=new Long(getShopLoginer().getShop().getId()).intValue();
if(date==null){
date=new DateBean();
}
int count=service.getCount(shopId, date);
Page pageResult =new Page();
if(count>0){
pageResult = service.list(1, count, shopId, date);
}
List> list = new ArrayList>();
double shopDeposit=getShopLoginer().getShop().getDeposit();
for (DepositLog s : pageResult.getData())
{
Map map = new HashMap();
map.put("id", s.getId());
map.put("depositSn", s.getDepositSn());
map.put("createTime", StringUtils.timestampToString(s.getCreateTime()));
map.put("type", type[s.getType()]);
map.put("amount", s.getAmount());
map.put("depositRest", s.getDepositRest());
map.put("depositGap", shopDeposit-s.getDepositRest());
map.put("userName", s.getUserName());
map.put("remarks", s.getRemarks());
list.add(map);
}
// 表格表头
String[] header = {"流水号","流水时间","类型","流水金额","押金余额","押金缺口","操作人","备注"};
// 对应Map中的key
String[] key = { "depositSn", "createTime","type",
"amount", "depositRest", "depositGap", "userName", "remarks"};
HSSFWorkbook workbook = null;
HttpServletResponse response = ServletActionContext
.getResponse();
workbook = ExportUtil.workPaperExport(list, header, key,
title, true, null, null, null);
os = response.getOutputStream();
response.setHeader("Content-disposition",
"p_w_upload; filename=" + toUtf8String(excelName));
response.setContentType("application/msexcel;charset=UTF-8");
workbook.write(os);
os.flush();
} catch (Exception e) {
if (logger.isDebugEnabled())
logger.error(e.getMessage(), e);
e.printStackTrace();
} finally {
try {
if (os != null)
os.close();
} catch (IOException e) {
if (logger.isInfoEnabled())
logger.error(e.getMessage(), e);
e.printStackTrace();
}
}
//return null;
}
//文件名乱码处理
public static String toUtf8String(String s){
StringBuffer sb = new StringBuffer();
for (int i=0;i
char c = s.charAt(i);
if (c >= 0 && c <= 255){sb.append(c);}
else{
byte[] b;
try { b = Character.toString(c).getBytes("utf-8");}
catch (Exception ex) {
System.out.println(ex);
b = new byte[0];
}
for (int j = 0; j < b.length; j++) {
int k = b[j];
if (k < 0) k += 256;
sb.append("%" + Integer.toHexString(k).toUpperCase());
}
}
}
return sb.toString();
}
报表服务器导出报表文件名乱码,excel 导出文件名乱码相关推荐
- linux 导出 excel文件名乱码,excel导出,文件名称中文乱码问题 · 大腿的博客
8种机械键盘轴体对比 本人程序员,要买一个写代码的键盘,请问红轴和茶轴怎么选? 记录一个excel导出遇见的中文名称的问题 接到项目需要有excel的导入导出功能,基于poi实现还是挺简单的,文件的导 ...
- python数据导出excel_python 数据生成excel导出(xlwt,wlsxwrite)代码实例
这篇文章主要介绍了python 数据生成excel导出(xlwt,wlsxwrite)代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 话不多 ...
- ArcMap(ArcGIS)导出属性表用Excel打开中文乱码的解决方法
前些天在做GIS实验时,发现用Excel打开ArcMap10.7导出的属性表中文是乱码,数字正常显示,便在网上搜罗解决方法.网上方法太多,比如下载安装官方补丁,修改注册表等等.个人感觉,麻烦而且不确定 ...
- 数据库导出到CSV用Excel打开中文乱码问题
数据库导出选择的格式为UTF-8,csv 由于excel默认是gb2312编码或其他形式,需要将其转为utf-8编码形式 具体操作如下:将csv格式文件,用记事本打开,然后另存为UTF-8格式文本,再 ...
- 修改t3报表服务器,t3报表服务器配置
t3报表服务器配置 内容精选 换一换 简要介绍Minimap2是一种多功能序列比对程序,可将DNA或mRNA序列与大型参考数据库对齐.语言:C/C++一句话描述:多功能序列比对程序开源协议:MIT建议 ...
- Java使用EasyExcel导出简单、复杂excel,以及多个excel打包导出下载zip
EasyExcel是一款阿里开源的一款非常优秀Excel导入导出工具,使用内存小,处理速度快,使用方便,正好最近项目中有用到多个excel导出下载的功能,便记录下 EasyExcel使用git地址:G ...
- php报表服务器配置,服务器_SQL Server 2008升级报表服务器数据库,报表服务器数据库可以为一个 - phpStudy...
SQL Server 2008升级报表服务器数据库 报表服务器数据库可以为一个或多个报表服务器实例提供内部存储.因为报表服务器数据库架构可能会因为推出新的 Reporting Services 版本而 ...
- JAVA导出404_从ActiveReports 8导出Excel时出错404
我一直在努力工作两周,大部分时间都花在等待我的支持问题的回应上 . 我有解决方案,我将在这里发布,希望它可以帮助下一个遇到这个问题的人 . 我将投入大量不必要的细节来增加下一个发现这个的可能性 . 我 ...
- Power BI 报表服务器企业一站式全链路解决方案
Power BI 报表服务器企业一站式全链路解决方案 (单点登录,自定义报表门户,自定义权限,应用集成) 前言 Power BI 从诞生开始就成为耀眼的明星,有着几大优势 1.快速上手 2.简单明了 ...
最新文章
- Oracle:推迟了的Java Enterprise Edition 8将会在“今年之内”发布
- 计算机中丢失ZJCAKeyAdmin,ZJCA数字证书客户端
- navicat for Oracle连接
- 用python分析小说_用Python对哈利波特系列小说进行情感分析
- 网站页面增加一个简单的密码登录访问php网站源码
- git 基础 tag 打标签
- android高德地图设置经纬度,安卓高德地图开发自定义线路规划(按着自己定义的经纬度规划线路)...
- 一个新时代的降临:智慧的医疗系统
- 将Excel文件数据导入到SqlServer数据库的三种方案
- (翻译)UIP Application Block学习系列(三)UIP概念
- 【网络协议】openR调研
- 用阿里服务器搭建彩虹网代刷平台
- 海康视频WEB插件 V1.5.2 开发总结
- 硅钢片铁芯、坡莫合金、非晶及纳米晶软磁合金
- 中国科学数学模板如何在CTEX和texstudio中顺利运行
- 公钥和私钥的区别与应用-----到底谁来加密谁来解密
- Pollard rho整数分解法
- 电商运营:数据分析的5大思维和8个指标
- 我的手机游戏回忆-风云剑侠
- 北邮22信通:实验五 共射放大电路的频率特性与深负反馈的影响
热门文章
- ArcGIS+ENVI实现遥感分类精度评估(分层抽样法)
- html5漂亮的登录与注册界面设计,漂亮的网页登陆/注册表单设计
- 最新微信ipad协议
- python标准库很丰富支持多种编程范式_基础班-第03天{python基础}
- 【OR】YALMIP 半正定规划
- Steam CMD是什么?Steam CMD怎么用?
- 【干货分享】最新WHQL徽标认证申请流程
- docker中mysql数据定时备份_[Docker]MySql 定时备份
- ubuntu20.04更换清华源
- leetcode记录汇总