1

ブラウザの画面にヒンディー語(または任意の地域の言語)でテキストを表示する必要があります。このテキストはデータベースから取得します。

このために、私は次のような非常に基本的なレベルから始めました。

String escapedStr = "\\u0905\\u092d\\u0940 \\u0938\\u092e\\u092f \\u0939\\u0948 \\u091c\\u0928\\u0924\\u093e";
String hindiText = StringEscapeUtils.unescapeJava(escapedStr);
System.out.println(hindiText);
return hindiText;

変数でヒンディー語のテキストを完全にうまく取得することができますhindiText。しかし、Eclipseコンソールまたはブラウザー画面で印刷すると、???? ?? ??

ブラウザと日食コンソールのデフォルトの文字エンコードをUNICODE(UTF-8)に設定しました。しかし、それでも成功しません。

誰かが私がこれを解決するのを手伝ってもらえますか?どの設定が欠けていますか?

ちょうどfyi-私は私のブラウザでヒンディー語のウェブサイトを開くことができます。したがって、言語設定は問題ではありません。

編集

ビューにJSPファイルを使用しているのでweb.xml、文字エンコードをグローバルに設定するために以下を追加しました。参照:これに従ってください

<jsp-config>
    <jsp-property-group>
        <url-pattern>*.jsp</url-pattern>
        <page-encoding>UTF-8</page-encoding>
    </jsp-property-group>
</jsp-config>

しかし、それでも成功しません!

4

3 に答える 3

9

しかし、Eclipseコンソールまたはブラウザ画面で印刷すると、????しか表示されません。?? ??

Eclipse の部分に関しては、stdout コンソールに UTF-8 を使用するように指示する必要があります。Window > Preferences > General > Workspace > Text File Encodingで設定できます。

ここに画像の説明を入力

JSP部分に関しては、UTF-8を使用してHTTPレスポンスボディを記述するように指示する必要があります。どちらかで設定できます

<%@page pageEncoding="UTF-8"%>

個々の JSP ごと、またはアプリケーション全体で

<jsp-config>
    <jsp-property-group>
        <url-pattern>*.jsp</url-pattern>
        <page-encoding>UTF-8</page-encoding>
    </jsp-property-group>
</jsp-config>

web.xml

以下も参照してください。

于 2013-02-08T13:11:25.370 に答える
0

この方法でコードを使用する

System.out.println("\u0905\u092d\u0940\u0938\u092e\u092f\u0939\u0948\u091c");
于 2013-02-08T12:22:35.323 に答える
0

問題は、使用する出力ストリームがおそらくプラットフォームの「デフォルト」エンコーディングを持っていることです。Windows では、これは多くの場合、お粗末な MS 8 ビット コード ページです。

PrintWriters を使用してテキストを印刷する習慣をつけ、正しいエンコーディングで作成されていることを確認してください。

于 2013-02-08T13:36:03.967 に答える