Java gbk to utf-8

4406 단어 gbkutf-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로 변환, 차단기 문자 인코딩 요청
스프링 설정 사용

 <!--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 구성 인코딩
추가
조세 회피 페이지에 중국어 코드가 포함되어 있다
예: 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의 인코딩을 설정하지 않았기 때문입니다.
요청을 이용하다.setCharacterEncoding("UTF-8");Tomcat 수신 요청의 인코딩 형식을 설정합니다. POST 방식으로 제출된 데이터만 유효하고 GET 방식으로 제출된 데이터는 유효하지 않습니다!
GET 인코딩을 설정하려면 서버를 수정합니다.xml 파일에서 상응하는 포트의 Connector 속성: URIENcoding = "UTF-8"을 사용하면 GET 방식으로 제출한 데이터가 정확하게 디코딩됩니다.

 <Connector port="8080" protocol="HTTP/1.1"
 connectionTimeout="20000"
 redirectPort="8443" URIEncoding="UTF-8" />
이렇게 오케이!!!
이상은 본문의 전체 내용입니다. 본고의 내용이 여러분의 학습이나 업무에 일정한 도움을 줄 수 있는 동시에 저희를 많이 지지해 주시기 바랍니다!

좋은 웹페이지 즐겨찾기