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条)

报告相同问题?

悬赏问题

  • ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
  • ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
  • ¥15 手机接入宽带网线,如何释放宽带全部速度
  • ¥30 关于#r语言#的问题:如何对R语言中mfgarch包中构建的garch-midas模型进行样本内长期波动率预测和样本外长期波动率预测
  • ¥15 ETLCloud 处理json多层级问题
  • ¥15 matlab中使用gurobi时报错
  • ¥15 这个主板怎么能扩出一两个sata口
  • ¥15 不是,这到底错哪儿了😭
  • ¥15 2020长安杯与连接网探
  • ¥15 关于#matlab#的问题:在模糊控制器中选出线路信息,在simulink中根据线路信息生成速度时间目标曲线(初速度为20m/s,15秒后减为0的速度时间图像)我想问线路信息是什么