全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

Java gbk转utf-8

1、文件转码:使用脚本

gbk转utf-8的脚本文件:

#!/bin/bash
FILE_SUFFIX="java xml html vm js"
# FILE_SUFFIX="vm"
file_names=""
for x in $FILE_SUFFIX
do
 file_names=`find . -name "*.$x" | xargs file -I | grep -v utf-8 | awk -F " |:" '{print $1}'`
 for file_name in $file_names
 do
 # echo $file_name
 iconv -f cp936 -t UTF-8 $file_name >$file_name".new" &&
 mv -f "$file_name.new" "$file_name"
 done
 echo "$x ok"
done 
find . -name "*.xml" | xargs sed -i "" "/<?xml/s/GBK/UTF-8/g"
find . -name "*.xml" | xargs sed -i "" "/<?xml/s/GB2312/UTF-8/g"
echo "xml head is ok!"
find . -name "pom.xml" | xargs sed -i "" "/<encoding>/s/GBK/UTF-8/g"
find . -name "pom.xml" | xargs sed -i "" "/<encoding>/s/GB2312/UTF-8/g"
find . -name "pom.xml" | xargs sed -i "" "/project.build.sourceEncoding/s/GBK/UTF-8/g"
find . -name "pom.xml" | xargs sed -i "" "/project.reporting.outputEncoding/s/GBK/UTF-8/g"
find . -name "pom.xml" | xargs sed -i "" "s/pop-vender-common-pageframe/pop-vender-common-pageframe-utf8/g"
echo "pom.xml is ok!" 
find . -name "*.properties" | xargs sed -i "" "/input.encoding/s/GBK/UTF-8/g"
find . -name "*.properties" | xargs sed -i "" "/output.encoding/s/GBK/UTF-8/g"
echo "velocity properties is OK!"
find . -name "strut*.xml" | xargs sed -i "" '/struts.i18n.encoding/s/GBK/UTF-8/g'
echo "struts xml is ok!"
find . -name "*.vm" | xargs sed -i "" "s/\/common\/js\/jdmsg\/jd-msg.js/\/common\/js\/jdmsg\/jd-msg-utf8.js/g"
find . -name "*.vm" | xargs sed -i "" "/\/ui.datepicker.js/s/<script t/<script charset=\"GBK\" t/g"
find . -name "*.vm" | xargs sed -i "" "/\/jquery-calendar.js/s/<script t/<script charset=\"GBK\" t/g"
echo "vm is ok"
echo "finished"
# echo $file_names

2、文件转码后,本地环境改成utf-8环境,可能会有部分乱码文件,手动修复

3、含有中文js引用增加charset="gbk"

   如依赖:static.360buying.com、shop.jd.com

4、打包编译编码:替换成UTF-8

5、xml设置格式:以前可能为gbk或gb2312,改成utf-8

6、web.xml转成UTF-8,请求拦截器字符编码

   如使用spring配置

 <!--Character Encoding filter(字符集拦截转换) -->
 <filter>
 <filter-name>charsetFilter</filter-name>
 <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
 <init-param>
 <param-name>encoding</param-name>
 <param-value>UTF-8</param-value>
 </init-param>
 <init-param>
 <param-name>forceEncoding</param-name>
 <param-value>true</param-value>
 </init-param>
 </filter>

7、代码GBK使用

  主要是代码里面写死GBK方式

  如string.getBytes("GBK")替换

8、jdurl配置编码

增加<property name="charsetName" value="utf-8"/>

避税分页中含有中文乱码

如:jdurl的编码设置:

 <bean class="com.jd.pop.component.url.PopJdUrl">
 <property name="url" value="${pop-vender.login.address}"/>
 <property name="charsetName" value="utf-8"/>
 </bean>

大概是这8条

重点在后面:

这时你会发现,页面的get请求请求服务器时还是会出现乱码,别慌,那是因为tomcat的编码你还没有设置.

利用request.setCharacterEncoding("UTF-8");来设置Tomcat接收请求的编码格式,只对POST方式提交的数据有效,对GET方式提交的数据无效!

要设置GET的编码,可以修改server.xml文件中,相应的端口的Connector的属性:URIEncoding="UTF-8",这样,GET方式提交的数据才会被正确解码。

 <Connector port="8080" protocol="HTTP/1.1"
 connectionTimeout="20000"
 redirectPort="8443" URIEncoding="UTF-8" />

这样就ok了!!!

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持!


# Java  # gbk转utf-8  # Java使用UTF-8或GBK编码后还是乱码问题的解决办法  # Java字符转码之UTF-8互转GBK具体实现  # 会有  # 才会  # 你还  # 分页  # 大概是  # 在后面  # 能为  # 只对  # 你会发现  # 那是因为  # 转成  # 主要是  # 替换成  # 出现乱码  # 拦截器  # 中含有  # lt  # project  # sed  # mv 


相关文章: 猪八戒网站制作视频,开发一个猪八戒网站,大约需要多少?或者自己请程序员,需要什么程序员,多少程序员能完成?  小型网站建站如何选择虚拟主机?  香港服务器WordPress建站指南:SEO优化与高效部署策略  标准网站视频模板制作软件,现在有哪个网站的视频编辑素材最齐全的,背景音乐、音效等?  建站之星展会模版如何一键下载生成?  php能控制zigbee模块吗_php通过串口与cc2530 zigbee通信【介绍】  已有域名如何快速搭建专属网站?  python的本地网站制作,如何创建本地站点?  如何快速打造个性化非模板自助建站?  ,有什么在线背英语单词效率比较高的网站?  建站之星CMS五站合一模板配置与SEO优化指南  如何通过IIS搭建网站并配置访问权限?  建站三合一如何选?哪家性价比更高?  制作网站的公司有哪些,做一个公司网站要多少钱?  建站之星如何实现网站加密操作?  免费ppt制作网站,有没有值得推荐的免费PPT网站?  太平洋网站制作公司,网络用语太平洋是什么意思?  广州顶尖建站服务:企业官网建设与SEO优化一体化方案  如何在七牛云存储上搭建网站并设置自定义域名?  宝塔Windows建站如何避免显示默认IIS页面?  免费公司网站制作软件,如何申请免费主页空间做自己的网站?  打鱼网站制作软件,波克捕鱼官方号怎么注册?  公司网站建设制作费用,想建设一个属于自己的企业网站,该如何去做?  如何在Ubuntu系统下快速搭建WordPress个人网站?  TestNG的testng.xml配置文件怎么写  如何在云服务器上快速搭建个人网站?  建站之星24小时客服电话如何获取?  网站制作的软件有哪些,制作微信公众号除了秀米还有哪些比较好用的平台?  装修招标网站设计制作流程,装修招标流程?  已有域名能否直接搭建网站?  移动端手机网站制作软件,掌上时代,移动端网站的谷歌SEO该如何做?  如何快速搭建高效香港服务器网站?  PHP 500报错的快速解决方法  电商平台网站制作流程,电商网站如何制作?  c# 在高并发场景下,委托和接口调用的性能对比  如何选择高效便捷的WAP商城建站系统?  JS中使用new Date(str)创建时间对象不兼容firefox和ie的解决方法(两种)  C#如何在一个XML文件中查找并替换文本内容  如何选择适合PHP云建站的开源框架?  如何快速启动建站代理加盟业务?  建站之星体验版:智能建站系统+响应式设计,多端适配快速建站  网站海报制作教学视频教程,有什么免费的高清可商用图片网站,用于海报设计?  建站主机解析:虚拟主机配置与服务器选择指南  建站之星多图banner生成与模板自定义指南  想学网站制作怎么学,建立一个网站要花费多少?  阿里云高弹*务器配置方案|支持分布式架构与多节点部署  金*站制作公司有哪些,金华教育集团官网?  建站中国官网:模板定制+SEO优化+建站流程一站式指南  中山网站推广排名,中山信息港登录入口?  公众号网站制作网页,微信公众号怎么制作? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。