JSP出EXCEl报表中文名称乱码

东北小硬人 东北小硬人 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
我在使用开源的JXL 出EXCEL报表时遇到这样的问题。
我想出的文件名称是这样的:例:test_李强.xls
代码是 ....test_+"UserID"+".xls";
但是控制台我看到的输出名称效果是:test_µ¥°¶·ï .xls


不知道为啥?
UserID 是这样取到的
String UserID = request.getParameter("UserID");
然后我用 System.out.println(UserID);
控制台输出的是这样的:??°?·?
目前我不清楚UserID传过来之前的编码格式 会不会就是因为 传来过得格式对我这边有影响
所以我下面用到的 编码转换的语句不起作用?
代码语句是这样的
String filename = new String(UserID.getBytes("GBK"),"gb2312");
但是System.out.println(filename );这样输出的还是:??°?·?
这里有个问题,UserID.getBytes("GBK"), 这个GBK是代表的什么含义? 后面的gb2312是我要变换的格式吗?

我是从htm 通过javaScript 跳转到 这个jsp 文件中 完成报表输出
htm 的 charset="gb2312"
在myecplise 下项目的编码格式 默认为 GBK ,操作系统为 windows xp 中文版

另外我在网页中也试了一下
String UserID =“李强”;
String filename = new String(UserID.getBytes("GBK"),"gb2312");

System.out.println(filename );
这样出来的效果是可以的 ;
而且 想输出的 test_李强.xls 也输出成功了:
请各位朋友帮忙 提些宝贵建议!搞不懂啊!
...全文

相关推荐

评论 7
收藏 已收藏
分享
返回顶部
东北小硬人
Java EE 67,535 成员 225,843 内容