3

コード:

import java.nio.charset.Charset;

public static Charset lookup(final String name) {
    if (name == null) {
        return null;
    }
    try {
        Charset charset = Charset.forName(name); 
        if (charset != null) {
            Charset superset = map.get(charset);
            if (superset != null) {
                charset = superset;
            }
        }
        return charset;
    } catch (IllegalCharsetNameException ex) {
        log.warn("Exception caught", ex);
        return null;
    } catch (UnsupportedCharsetException ex) {
        return null;
    }
} 

この問題は、Charset.forName(name); の「名前」が「UTF-7」の場合に発生しました。

My Linux プラットフォームでは、常に IllegalCharsetNameException が発生します。

しかし、私のWindowsプラットフォームでは問題ないようです。

2 つのプラットフォームのソース コードと Java バージョンは同じです

Java バージョン "1.7.0_17" Java(TM) SE ランタイム環境 (ビルド 1.7.0_17-b02) Java HotSpot(TM) 64 ビット サーバー VM (ビルド 23.7-b01、混合モード)

私はそれを修正する方法がわかりません..

ありがとうございました !!

4

2 に答える 2