ENCTYPE="multipart/form-data" 传值乱码问题

feng0717 2008-11-10 10:26:09
第一张页面 form 里有ENCTYPE="multipart/form-data" 属性。
第二章参数接受页面里用com.jspsmart.upload.SmartUpload 组件接收。
两张页面编码格式都是UTF-8,tomcat里的server.xml配置URIEncoding为UTF-8如下
<Connector acceptCount="100" URIEncoding="UTF-8" connectionTimeout="20000" disableUploadTimeout="true" port="8080" redirectPort="8443" maxSpareThreads="75" maxThreads="150" minSpareThreads="25">
代码————

SmartUpload objs= new SmartUpload();
String name = objs.getRequest().getParameter("name");
接收中文为乱码。
修改为
String name = new String(objs.getRequest().getParameter("name").getBytes("ISO-8859-1"),"UTF-8");
还是乱码
String name = new String(objs.getRequest().getParameter("name").getBytes("GBK"),"UTF-8");
部分文字乱码

----------------------求教高手解决-----------

...全文
1956 21 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
21 条回复
切换为时间正序
请发表友善的回复…
发表回复
msqsc 2011-11-07
  • 打赏
  • 举报
回复
14楼很对啊
yuhao111 2011-10-10
  • 打赏
  • 举报
回复
我也想知道
longtao2009 2011-05-18
  • 打赏
  • 举报
回复
[Quote=引用 13 楼 feng0717 的回复:]
解决了。改成“UTF-8”修改原代码!
[/Quote]

如何的? 怎么修改源代码?
lzy1959001 2009-09-08
  • 打赏
  • 举报
回复
有没有能解决的!!!!!!!!!!
jinyi_lin 2009-07-29
  • 打赏
  • 举报
回复
[Quote=引用 16 楼 tlin_114 的回复:]
不过文件名为奇数个字符是最后一个就乱码啦
[/Quote]
的确如此,有没有哪位大侠知道如何解决?
tlin_114 2009-06-30
  • 打赏
  • 举报
回复
不过文件名为奇数个字符是最后一个就乱码啦
tlin_114 2009-06-30
  • 打赏
  • 举报
回复
10楼的帮我解决了问题,谢谢,哈哈
bacel5902 2008-11-14
  • 打赏
  • 举报
回复
String name = new String(objs.getRequest().getParameter("name").getBytes("ISO8859-1"),"UTF-8");
feng0717 2008-11-14
  • 打赏
  • 举报
回复
解决了。改成“UTF-8”修改原代码!
feng0717 2008-11-11
  • 打赏
  • 举报
回复
String name = objs.getRequest().getParameter("name");
System.out.println(new String(name.getBytes(), "UTF-8"));

部分文字乱码!
l_l001 2008-11-11
  • 打赏
  • 举报
回复
关注 我现在也遇到了这个问题 不知道怎么解决
feng0717 2008-11-10
  • 打赏
  • 举报
回复
POST方式提交。后台打印的是乱码。
shuai45 2008-11-10
  • 打赏
  • 举报
回复
你这样
1》提交之前将页面的中文通过js 去alert一下,看是否是乱码
2》后台request一下 打印出来看是否乱码
3》你看你的from的提交方式是post还是get
szhshaozhihua 2008-11-10
  • 打赏
  • 举报
回复
一般的是 用GB2312的 试试改成这个。
feng0717 2008-11-10
  • 打赏
  • 举报
回复
问题是如果第一张页面不用multipart/form-data属性
在第二张页面直接用JSP自带的request.getParameter("");是正常的,没有乱码现象
shuai45 2008-11-10
  • 打赏
  • 举报
回复
乱码貌似和multipart/form-data没有关系。
1:确定用直接request乱码?
2:objs.getRequest().getParameter("");其实是对request一个封装,归跟到底还是request取值乱码

sunnylyy 2008-11-10
  • 打赏
  • 举报
回复
刚刚在自己电脑上调试了一下,试试这个方法:

String name = objs.getRequest().getParameter("name");
System.out.println(new String(name.getBytes(), "UTF-8"));
sunnylyy 2008-11-10
  • 打赏
  • 举报
回复
遇到过类似的问题,当时是通过改smartupload源代码方式解决的,好象是在某个函数里加了一个“UTF-8”。
feng0717 2008-11-10
  • 打赏
  • 举报
回复
现在的问题是只能配置成GB2312 ,com.jspsmart.upload.SmartUpload 组件才识别,不会出现乱码。
UTF-8的话就不行了。
shuai45 2008-11-10
  • 打赏
  • 举报
回复
说说去还你是配置的问题。
加载更多回复(1)

81,122

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧