Javaの文字化けの解決策

藏色散人
リリース: 2020-04-11 09:20:47
オリジナル
2948 人が閲覧しました

Javaの文字化けの解決策

Java の文字化けの解決策

Java の場合、デフォルトのエンコード方式が UNICODE なので、中国語の It を使用してくださいまた、問題が発生しやすいため、一般的な解決策は次のとおりです:

String s2 = new String(s1.getBytes(“ISO-8859-1”),”GBK”);
ログイン後にコピー

1. UTF8 は JSP の中国語文字化け問題を解決します

推奨チュートリアル: "java learning"

通常、各ページの先頭に次の内容を追加します:

<%@ page language="java" contentType="text/html; charset=UTF-8"     pageEncoding="UTF-8"%>
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<% request.setCharacterEncoding("UTF-8"); %>
ログイン後にコピー

◆charset=UTF-8 は、JSP がクライアントに「UTF-8」として出力するエンコード方式を指定するために使用されます。

◆pageEncoding="UTF-8"、JSP エンジンが中国語の文字を含む JSP ページを正しくデコードできるようにするため、これは LINUX で非常に効果的です;

◆request.setCharacterEncoding("UTF- 8"); リクエストは中国語でエンコードされています。

それでも問題を解決できない場合があり、次のように対処する必要があります:

String msg = request.getParameter("message");  String str=new String(msg.getBytes("ISO-8859-1"),"UTF-8");  out.println(st);
ログイン後にコピー

2. Tomcat 5.5 の中国語の文字化けコード

%TOMCAT を入力するだけです。インストール ディレクトリ%/ webapps\servlets -Examples\WEB-INF\classes\filters\SetCharacterEncodingFilter.class ファイルが webapp ディレクトリ/filters にコピーされます。フィルタ ディレクトリがない場合は作成します。

2) 次の行を web.xml に追加します:

<filter>   
<filter-name>Set   Character   Encoding</filter-name>   
<filter-class>filters.SetCharacterEncodingFilter</filter-class>   
<init-param>   
<param-name>encoding</param-name>   
<param-value>GBK</param-value>   
</init-param>   
</filter>   
<filter-mapping>   
<filter-name>Set   Character   Encoding</filter-name>   
<url-pattern>/*</url-pattern>   
</filter-mapping>
ログイン後にコピー

3)

2 を完了し、メソッド ソリューションを取得します

1) サーバーを開きますTomcat の .xml ファイルを開き、ブロックを見つけて次の行を追加します:

  URIEncoding=”GBK”
ログイン後にコピー

完全な内容は次のようになります:

<connector     
  port="80"   maxThreads="150"   minSpareThreads="25"   maxSpareThreads="75"   
  enableLookups="false"   redirectPort="8443"   acceptCount="100"   
  debug="0"   connectionTimeout="20000"     
  disableUploadTimeout="true"     
  URIEncoding="GBK"   
  />
ログイン後にコピー

2) tomcat を再起動します。すべて問題ありません。

3. xmlHttpRequest 中国語の問題

ページ jsp に使用される GBK エンコーディング

code:

<%@ page contentType="text/html; charset=GBK"%>
ログイン後にコピー

javascript 部分

code:

function addFracasReport() {   
    var url="controler?actionId=0_06_03_01&actionFlag=0010";   
    var urlmsg="&reportId="+fracasReport1.textReportId.value;  //故障报告表编号   
           
    var xmlHttp=Common.createXMLHttpRequest();   
    xmlHttp.onreadystatechange = Common.getReadyStateHandler(xmlHttp, 
       eval("turnAnalyPage"));   
    xmlHttp.open("POST",url,true);   
    xmlHttp.setRequestHeader( " Content-Type " , " 
       application/x-www-form-urlencoded);   
    xmlHttp.send(urlmsg);          
}
#p#
ログイン後にコピー

バックグラウンドjavaで取得したreportIdが文字化けしています転送方法が分かりません主な原因はxmlHttp.send(urlmsg);が今後どのようなエンコードになるのか分からないことです。後で Java を使用して転送しましたが、いくつかの方法を試しましたが成功しませんでした。

以上がJavaの文字化けの解決策の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート