jinfreaks 2013-08-28 13:12
浏览 256
已采纳

中文乱码问题

同一个JSP页面,提交的时候JS中用了encodeURIComponent(param)
解码:new String(request.getParameters(param).getBytes("ISO-8859-1"),'UTF-8');
数据库 Oracle NLS_CHARACTERSET : UTF8

问题是:
1. 本机加上(windows7) 提交数据库显示:??
2. 放到服务器上(windows xp)提交数据正常显示中文

如果把解码去掉
1. 本机上正常显示中文
2. 放到服务器上显示乱码李丽(不是??)

请问这是怎么回事啊?是什么问题
1. windows环境问题
2. Tomcat设置问题
3. JSP设置问题
4. Servlet问题
5. 数据库问题

  • 写回答

4条回答

  • smiky 2013-08-29 08:44
    关注

    应该是new String(request.getParameters(param).getBytes("ISO-8859-1"),'UTF-8');出问题了,这种转换的前提是你的UTF-8的字符不经过处理,直接传输,但是encodeURIComponent是将字符串以UTF-8编码成了类ISO的形式了,你应该用java的encodeURI直接encodeURI(param)

    好久没用JAVA了,你试试看我说的对不对

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥50 易语言把MYSQL数据库中的数据添加至组合框
  • ¥20 求数据集和代码#有偿答复
  • ¥15 关于下拉菜单选项关联的问题
  • ¥20 java-OJ-健康体检
  • ¥15 rs485的上拉下拉,不会对a-b<-200mv有影响吗,就是接受时,对判断逻辑0有影响吗
  • ¥15 使用phpstudy在云服务器上搭建个人网站
  • ¥15 应该如何判断含间隙的曲柄摇杆机构,轴与轴承是否发生了碰撞?
  • ¥15 vue3+express部署到nginx
  • ¥20 搭建pt1000三线制高精度测温电路
  • ¥15 使用Jdk8自带的算法,和Jdk11自带的加密结果会一样吗,不一样的话有什么解决方案,Jdk不能升级的情况