ホームページ  >  記事  >  Java  >  Javaオブジェクトが文字化けした場合の対処方法

Javaオブジェクトが文字化けした場合の対処方法

coldplay.xixi
coldplay.xixiオリジナル
2020-08-17 11:41:102077ブラウズ

文字化けした Java オブジェクトの解決策: 1. 文字化けしたファイルをダウンロードするときは、HTTP 送信前にダウンロード応答ヘッダーとファイル名を URLEncoding でエンコードする必要があります; 2. Java とデータベースの間で文字化けしたファイルの場合は、unicode と To を直接使用します。データベースと対話する場合は、ドライバーの URL で指定できます。

Javaオブジェクトが文字化けした場合の対処方法

Java オブジェクトのコードが文字化けする問題の解決策:

JSP パラメータとページ パラメータの間のコードが文字化けする

リクエストのエンコード方式を強制的に指定します:

request.setCharacterEncoding("UTF-8");

ページへの JSP 出力が文字化けしている場合:

response.setCharacterEncoding("UTF-8");

または、web.xml でサーブレット フィルター フィルターを設定します (有効な場合のみ) POST モードの場合、GET モードでは無効):

<filter>
<filter-name>CharacterEncodingFilter</filter-name>
<filter-class>net.vschool.web.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>CharacterEncodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>

Tomact 設定ファイルの変更、server.xml

<Host name="localhost"  appBase="webapps"
            unpackWARs="true" autoDeploy="true"
            xmlValidation="false" xmlNamespaceAware="false"  URIEncoding="UTF-8">

URL 処理:

<a href="TestAction.do?name=<%=java.net.URLEncoder.encode("你好","UTF-8")%>" ></a>

ファイル ダウンロードの文字化けコード:

キーはダウンロード時の応答ヘッダーであり、HTTP 送信ではファイル名を URLEncoding でエンコードする必要があります。

response.setHeader("Content-disposition", "attachment;filename="+ URLEncoder.encode(fileName,"utf-8"));

Get メソッドの文字化けコード:

String args = new String(strCn.getBytes("ISO-8859-1"),"UTF-8");

Post メソッドの文字化けコード:

Just request.setCharacterEncoding( " UTF-8"); で十分です。

Java とデータベース間の文字化け

Unicode を直接使用してデータベースと対話します。これは、mysql ドライバーなどのドライバーの URL で指定できます:

 jdbc:mysql://127.0.0.1:3306/database?useUnicode=true&characterEncoding=utf-8

関連する学習の推奨事項: Java 基本チュートリアル

以上がJavaオブジェクトが文字化けした場合の対処方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。