のねのBlog

パソコンの問題や、ソフトウェアの開発で起きた問題など書いていきます。よろしくお願いします^^。

この国を出よ

読み応えがあって面白かった。
ユニクロの当初のイメージと違い面白そうな会社だなと思った。
海外をめざせるようなことを考えねば。

この国を出よ

この国を出よ

DecoderFallback

System.Text.Encoding encode = System.Text.Encoding.BigEndianUnicode;
enccode.DecoderFallback = DecoderFallback.ExceptionFallback;

これで実行すると、”インスタンスは読み取り専用です。”になってしまう。

EncoderExceptionFallback クラス (System.Text)
Encoding クラス (System.Text)
Encodingクラスで扱えるエンコーディング名は?[C#、VB] ? @IT

    enc = Encoding.GetEncoding("unicodeFFFE",
        new EncoderExceptionFallback(),
        new DecoderExceptionFallback());

    try
    {
        string str = enc.GetString(codeBytes, 0, 2);
    }
    catch (DecoderFallbackException excep)
    {
        MessageBox.Show("Dec:"+excep.Message.ToString());
    }
    catch (EncoderFallbackException excep)
    {
        MessageBox.Show("Enc:"+excep.Message.ToString());
    }

これで例外が発生した。

★フォントデータの方に、フォールバック用の文字が埋まっている場合

    • 例外は発生しない。
    • strにはそのままの文字コード(例:0xff01)が返ってきて、表示すると□になる。
    • フォールバックしているのか、文字を表示しているのか判別することはできない。