3

どこかで修正できないエンコーディングの問題が少しあります。

次の Java ファイルがあります。

public class Main {

    public static void main(String[] args) {
        System.out.println("áéíàèì€aei");
    }
}

ファイルの文字セットのエンコーディングは UTF-8 で、Windows 上の Eclipse を使用して編集およびコンパイルしています。ファイルをコンパイルした後、次に示すように、.class ファイルを Debian サーバーに移動します。このサーバーの文字セット エンコーディングも UTF-8 です。

root@srv-dev:~# locale
LANG=fr_FR.UTF-8
LANGUAGE=
LC_CTYPE="fr_FR.UTF-8"
LC_NUMERIC="fr_FR.UTF-8"
LC_TIME="fr_FR.UTF-8"
LC_COLLATE="fr_FR.UTF-8"
LC_MONETARY="fr_FR.UTF-8"
LC_MESSAGES="fr_FR.UTF-8"
LC_PAPER="fr_FR.UTF-8"
LC_NAME="fr_FR.UTF-8"
LC_ADDRESS="fr_FR.UTF-8"
LC_TELEPHONE="fr_FR.UTF-8"
LC_MEASUREMENT="fr_FR.UTF-8"
LC_IDENTIFICATION="fr_FR.UTF-8"
LC_ALL=fr_FR.UTF-8

アプリを実行すると、次のようになります。

root@srv-dev:~# java Main
áéíàèìâ¬aei

私は Eclipse です。プロパティを左クリックし、リソース/テキスト ファイルのエンコーディング / その他 : UTF-8 に移動して、UTF-8 をプロジェクト エンコーディングとして設定しました。

他に何を変えるかわかりません。私が見逃しているかもしれない何かがありますが、私はそれを見つけることができません。

4

2 に答える 2

1

Java ファイルの実行に使用しているコンソール/シェルも、UTF-8 エンコーディングを有効にする必要があります。そうしないと、文字が正しく表示されません。以下のリンクに記載されている手順に従って、debian シェルで UTF-8 を有効にします。

http://jaysonlorenzen.wordpress.com/2009/01/16/set-up-a-debian-linux-machine-to-handle-utf-8-in-a-shell-or-console-app/

于 2013-10-02T15:56:36.193 に答える