3

サーバーにファイルがあります。元々、名前は読み取り可能であり、ユーザーはファイル(名前にはキリル文字が含まれています)をサーバーに配置し、アプリからファイルを取得します。問題は、サーバーからこのファイルを取得すると、名前が元の名前と異なることです。そのような「Ìóõòîð...」のようなものですが、元の名前にはそのような記号は含まれていません(абвгдеёжзийклмнопрстуфхцчшщьъэюяのみ)。彼らがどのようにファイルをアップロードするか(彼らはftpアクセスを持っています)はわかりませんが、サーバー上でアップロード前は「良い」名前で、アップロード後は「破損」していることは確かです。filezillaでさえ名前が壊れていることを示しています。

破損した名前を復元するために助けが必要です。私はJavaを使用しています

4

1 に答える 1

4

これを試して:

    String s = "Ìóõòîð";
    final byte[] cp1252s = s.getBytes("Cp1252");
    final String s1 = new String(cp1252s, "Cp1251");
    System.out.println(s1);

版画:Мухтор

于 2012-04-06T21:36:04.230 に答える