EncoderReplacementFallbackとは? わかりやすく解説

EncoderReplacementFallback クラス

メモ : このクラスは、.NET Framework version 2.0新しく追加されたものです。

出力バイト シーケンス変換できない入力文字のために、フォールバック呼ばれるエラー処理機構提供しますフォールバックは、元の入力文字代わりにユーザー指定置換文字列を提供します。このクラス継承できません。

名前空間: System.Text
アセンブリ: mscorlib (mscorlib.dll 内)
構文構文

<SerializableAttribute> _
Public NotInheritable Class
 EncoderReplacementFallback
    Inherits EncoderFallback
Dim instance As EncoderReplacementFallback
[SerializableAttribute] 
public sealed class EncoderReplacementFallback
 : EncoderFallback
[SerializableAttribute] 
public ref class EncoderReplacementFallback
 sealed : public EncoderFallback
/** @attribute SerializableAttribute() */ 
public final class EncoderReplacementFallback
 extends EncoderFallback
SerializableAttribute 
public final class EncoderReplacementFallback
 extends EncoderFallback
解説解説
使用例使用例

EncoderReplacementFallback クラスコード例次に示します

' This example demonstrates the EncoderReplacementFallback class.
Imports System
Imports System.Text

Class Sample
    Public Shared Sub Main()
 
        
        ' Create an encoding, which is equivalent to calling the 
        ' ASCIIEncoding class constructor. 
        ' The EncoderReplacementFallback parameter specifies that the
 
        ' string, "(unknown)", replace characters that cannot
 be encoded. 
        ' A decoder replacement fallback is also specified, but in this
 
        ' code example the decoding operation cannot fail.  

        Dim erf As New EncoderReplacementFallback("(unknown)")
        Dim drf As New DecoderReplacementFallback("(error)")
        Dim ae As Encoding = Encoding.GetEncoding("us-ascii",
 erf, drf)
        
        ' The input string consists of the Unicode characters LEFT POINTING
 
        ' DOUBLE ANGLE QUOTATION MARK (U+00AB), 'X' (U+0058), and RIGHT
 POINTING 
        ' DOUBLE ANGLE QUOTATION MARK (U+00BB). 
        ' The encoding can only encode characters in the US-ASCII range
 of U+0000 
        ' through U+007F. Consequently, the characters bracketing the
 'X' character
        ' are replaced with the fallback replacement string, "(unknown)".

        Dim inputString As String
 = "«X»"
        Dim decodedString As String
        Dim twoNewLines As String
 = vbCrLf & vbCrLf
        Dim ix As Integer
 = 0
        Dim numberOfEncodedBytes As Integer
 = ae.GetByteCount(inputString)
        ' Counteract the compiler adding an extra byte to the array.
        Dim encodedBytes(numberOfEncodedBytes - 1) As
 Byte
        
        ' --------------------------------------------------------------------------
        Console.Clear()
        
        ' Display the name of the encoding.
        Console.WriteLine("The name of the encoding is ""{0}""."
 & vbCrLf, ae.WebName)
        
        ' Display the input string in text.
        Console.WriteLine("Input string ({0} characters): ""{1}""",
 _
                           inputString.Length, inputString)
        
        ' Display the input string in hexadecimal. 
        ' Each element is converted to an integer with Convert.ToInt32.
        Console.Write("Input string in hexadecimal: ")
        Dim c As Char
        For Each c In inputString.ToCharArray()
            Console.Write("0x{0:X2} ", Convert.ToInt32(c))
        Next c
        Console.Write(twoNewLines)
        
        ' --------------------------------------------------------------------------
        ' Encode the input string. 
        Console.WriteLine("Encode the input string...")
        numberOfEncodedBytes = ae.GetBytes(inputString, 0, inputString.Length, _
                                           encodedBytes, 0)
        
        ' Display the encoded bytes. 
        ' Each element is converted to an integer with Convert.ToInt32.
        Console.WriteLine("Encoded bytes in hexadecimal ({0} bytes):"
 & vbCrLf, _
                           numberOfEncodedBytes)
        ix = 0
        Dim b As Byte
        For Each b In encodedBytes
            Console.Write("0x{0:X2} ", Convert.ToInt32(b))
            ix += 1
            If 0 = ix Mod 6 Then
                Console.WriteLine()
            End If
        Next b
        Console.Write(twoNewLines)
        
        ' --------------------------------------------------------------------------
        ' Decode the encoded bytes, yielding a reconstituted string.
        Console.WriteLine("Decode the encoded bytes...")
        decodedString = ae.GetString(encodedBytes)
        
        ' Display the input string and the decoded string for comparison.
        Console.WriteLine("Input string:  ""{0}""",
 inputString)
        Console.WriteLine("Decoded string:""{0}""",
 decodedString)
    
    End Sub 'Main
End Class 'Sample
'
'This code example produces the following results:
'
'The name of the encoding is "us-ascii".
'
'Input string (3 characters): "X"
'Input string in hexadecimal: 0xAB 0x58 0xBB
'
'Encode the input string...
'Encoded bytes in hexadecimal (19 bytes):
'
'0x28 0x75 0x6E 0x6B 0x6E 0x6F
'0x77 0x6E 0x29 0x58 0x28 0x75
'0x6E 0x6B 0x6E 0x6F 0x77 0x6E
'0x29
'
'Decode the encoded bytes...
'Input string:  "X"
'Decoded string:"(unknown)X(unknown)"
'
// This example demonstrates the EncoderReplacementFallback class.

using System;
using System.Text;

class Sample 
{
    public static void Main()
 
    {

// Create an encoding, which is equivalent to calling the 
// ASCIIEncoding class constructor. 
// The EncoderReplacementFallback parameter specifies that the
// string, "(unknown)", replace characters that cannot be
 encoded. 
// A decoder replacement fallback is also specified, but in this 
// code example the decoding operation cannot fail.  

    Encoding ae = Encoding.GetEncoding(
                  "us-ascii",
                  new EncoderReplacementFallback("(unknown)"),
 
                  new DecoderReplacementFallback("(error)"));

// The input string consists of the Unicode characters LEFT POINTING
 
// DOUBLE ANGLE QUOTATION MARK (U+00AB), 'X' (U+0058), and RIGHT POINTING
 
// DOUBLE ANGLE QUOTATION MARK (U+00BB). 
// The encoding can only encode characters in the US-ASCII range of
 U+0000 
// through U+007F. Consequently, the characters bracketing the 'X' character
// are replaced with the fallback replacement string, "(unknown)".

    string inputString = "\u00abX\u00bb";
    string decodedString;
    string twoNewLines = "\n\n";
    byte[] encodedBytes = new byte[ae.GetByteCount(inputString)];
    int numberOfEncodedBytes = 0;
    int ix = 0;

// --------------------------------------------------------------------------
    Console.Clear();

// Display the name of the encoding.
    Console.WriteLine("The name of the encoding is \"{0}\".\n",
 ae.WebName);

// Display the input string in text.
    Console.WriteLine("Input string ({0} characters): \"{1}\"",
 
                       inputString.Length, inputString);

// Display the input string in hexadecimal.
    Console.Write("Input string in hexadecimal:
 ");
    foreach (char c in inputString.ToCharArray())
 
        {
        Console.Write("0x{0:X2} ", (int)c);
        }
    Console.Write(twoNewLines);

// --------------------------------------------------------------------------
// Encode the input string. 

    Console.WriteLine("Encode the input string...");
    numberOfEncodedBytes = ae.GetBytes(inputString, 0, inputString.Length, 
                                       encodedBytes, 0);

// Display the encoded bytes.
    Console.WriteLine("Encoded bytes in hexadecimal ({0}
 bytes):\n", 
                       numberOfEncodedBytes);
    ix = 0;
    foreach (byte b in encodedBytes)
        {
        Console.Write("0x{0:X2} ", (int)b);
        ix++;
        if (0 == ix % 6) Console.WriteLine();
        }
    Console.Write(twoNewLines);

// --------------------------------------------------------------------------
// Decode the encoded bytes, yielding a reconstituted string.

    Console.WriteLine("Decode the encoded bytes...");
    decodedString = ae.GetString(encodedBytes);

// Display the input string and the decoded string for comparison.
    Console.WriteLine("Input string:  \"{0}\"",
 inputString);
    Console.WriteLine("Decoded string:\"{0}\"",
 decodedString);
    }
}
/*
This code example produces the following results:

The name of the encoding is "us-ascii".

Input string (3 characters): "X"
Input string in hexadecimal: 0xAB 0x58 0xBB

Encode the input string...
Encoded bytes in hexadecimal (19 bytes):

0x28 0x75 0x6E 0x6B 0x6E 0x6F
0x77 0x6E 0x29 0x58 0x28 0x75
0x6E 0x6B 0x6E 0x6F 0x77 0x6E
0x29

Decode the encoded bytes...
Input string:  "X"
Decoded string:"(unknown)X(unknown)"

*/
// This example demonstrates the EncoderReplacementFallback class.

using namespace System;
using namespace System::Text;

int main()
{
    // Create an encoding, which is equivalent to calling the
    // ASCIIEncoding class constructor.
    // The EncoderReplacementFallback parameter specifies that the
    // string, "(unknown)", replace characters that cannot
 be encoded.
    // A decoder replacement fallback is also specified, but in this
    // code example the decoding operation cannot fail.

    Encoding^ ascii = Encoding::GetEncoding("us-ascii",
        gcnew EncoderReplacementFallback("(unknown)"),
        gcnew DecoderReplacementFallback("(error)"));

    // The input string consists of the Unicode characters LEFT POINTING
    // DOUBLE ANGLE QUOTATION MARK (U+00AB), 'X' (U+0058), and RIGHT
    // POINTING DOUBLE ANGLE QUOTATION MARK (U+00BB).
    // The encoding can only encode characters in the US-ASCII range
 of
    // U+0000 through U+007F. Consequently, the characters bracketing
 the
    // 'X' character are replaced with the fallback replacement string
,
    // "(unknown)".

    String^ inputString = "\u00abX\u00bb";
    String^ decodedString;
    String^ twoNewLines = Environment::NewLine + Environment::NewLine;
    array <Byte>^ encodedBytes = 
        gcnew array<Byte>(ascii->GetByteCount(inputString));
    int numberOfEncodedBytes = 0;

    // ---------------------------------------------------------------------
    Console::Clear();

    // Display the name of the encoding.
    Console::WriteLine("The name of the encoding is \"{0}\".{1}",
 
        ascii->WebName, Environment::NewLine);

    // Display the input string in text.
    Console::WriteLine("Input string ({0} characters): \"{1}\""
,
        inputString->Length, inputString);

    // Display the input string in hexadecimal.
    Console::Write("Input string in hexadecimal:
 ");
    for each (char c in
 inputString)
    {
        Console::Write("0x{0:X2} ", c);
    }
    Console::Write(twoNewLines);

    // ---------------------------------------------------------------------
    // Encode the input string.

    Console::WriteLine("Encode the input string...");
    numberOfEncodedBytes = ascii->GetBytes(inputString, 0, inputString->Length
,
        encodedBytes, 0);

    // Display the encoded bytes.
    Console::WriteLine("Encoded bytes in hexadecimal ({0}
 bytes):{1}",
        numberOfEncodedBytes, Environment::NewLine);
    for(int i = 0; i < encodedBytes->Length;
 i++)
    {
        Console::Write("0x{0:X2} ", encodedBytes[i]);
        if(((i + 1) % 6) == 0)
        {
            Console::WriteLine();
        }
    }
    Console::Write(twoNewLines);

    // ---------------------------------------------------------------------
    // Decode the encoded bytes, yielding a reconstituted string.

    Console::WriteLine("Decode the encoded bytes...");
    decodedString = ascii->GetString(encodedBytes);

    // Display the input string and the decoded string for comparison.
    Console::WriteLine("Input string:  \"{0}\"",
 inputString);
    Console::WriteLine("Decoded string:\"{0}\"",
 decodedString);
}



/*
This code example produces the following results:

The name of the encoding is "us-ascii".

Input string (3 characters): "X"
Input string in hexadecimal: 0xAB 0x58 0xBB

Encode the input string...
Encoded bytes in hexadecimal (19 bytes):

0x28 0x75 0x6E 0x6B 0x6E 0x6F
0x77 0x6E 0x29 0x58 0x28 0x75
0x6E 0x6B 0x6E 0x6F 0x77 0x6E
0x29

Decode the encoded bytes...
Input string:  "X"
Decoded string:"(unknown)X(unknown)"

*/
継承階層継承階層
System.Object
   System.Text.EncoderFallback
    System.Text.EncoderReplacementFallback
スレッド セーフスレッド セーフ
この型の public static (Visual Basic では Shared) メンバはすべて、スレッド セーフです。インスタンス メンバ場合は、スレッド セーフであるとは限りません。
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
EncoderReplacementFallback メンバ
System.Text 名前空間
EncoderReplacementFallbackBuffer
EncoderReplacementFallback
DefaultString

EncoderReplacementFallback コンストラクタ ()


EncoderReplacementFallback コンストラクタ (String)

メモ : このコンストラクタは、.NET Framework version 2.0新しく追加されたものです。

指定した置換文字列を使用して、EncoderReplacementFallback クラス新しインスタンス初期化します。

名前空間: System.Text
アセンブリ: mscorlib (mscorlib.dll 内)
構文構文

例外例外
解説解説

replacement パラメータは、この EncoderReplacementFallback オブジェクトの値である置換文字列を初期化します。

プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
EncoderReplacementFallback クラス
EncoderReplacementFallback メンバ
System.Text 名前空間
DefaultString
EncoderReplacementFallback

EncoderReplacementFallback コンストラクタ

EncoderReplacementFallback クラス新しインスタンス初期化します。
オーバーロードの一覧オーバーロードの一覧

名前 説明
EncoderReplacementFallback () EncoderReplacementFallback クラス新しインスタンス初期化します。
EncoderReplacementFallback (String) 指定した置換文字列を使用してEncoderReplacementFallback クラス新しインスタンス初期化します。
参照参照

関連項目

EncoderReplacementFallback クラス
EncoderReplacementFallback メンバ
System.Text 名前空間
DefaultString

EncoderReplacementFallback プロパティ


パブリック プロパティパブリック プロパティ

  名前 説明
パブリック プロパティ ExceptionFallback  入力文字エンコードできない場合例外スローする EncoderFallback オブジェクト取得します。 ( EncoderFallback から継承されます。)
パブリック プロパティ MaxCharCount オーバーライドされます。 この EncoderReplacementFallback オブジェクト置換文字列に含まれる文字数取得します
パブリック プロパティ ReplacementFallback  エンコードできない入力文字代わりに代替文字列作成する EncoderFallback オブジェクト取得します。 ( EncoderFallback から継承されます。)
参照参照

関連項目

EncoderReplacementFallback クラス
System.Text 名前空間
EncoderReplacementFallbackBuffer
EncoderReplacementFallback
DefaultString

EncoderReplacementFallback メソッド


パブリック メソッドパブリック メソッド

参照参照

関連項目

EncoderReplacementFallback クラス
System.Text 名前空間
EncoderReplacementFallbackBuffer
EncoderReplacementFallback
DefaultString

EncoderReplacementFallback メンバ

出力バイト シーケンス変換できない入力文字のために、フォールバック呼ばれるエラー処理機構提供しますフォールバックは、元の入力文字代わりにユーザー指定置換文字列を提供します。このクラス継承できません。

EncoderReplacementFallback データ型公開されるメンバを以下の表に示します


パブリック コンストラクタパブリック コンストラクタ
  名前 説明
パブリック メソッド EncoderReplacementFallback オーバーロードされます。 EncoderReplacementFallback クラス新しインスタンス初期化します。
パブリック プロパティパブリック プロパティ
  名前 説明
パブリック プロパティ ExceptionFallback  入力文字エンコードできない場合例外スローする EncoderFallback オブジェクト取得します。(EncoderFallback から継承されます。)
パブリック プロパティ MaxCharCount オーバーライドされます。 この EncoderReplacementFallback オブジェクト置換文字列に含まれる文字数取得します
パブリック プロパティ ReplacementFallback  エンコードできない入力文字代わりに代替文字列作成する EncoderFallback オブジェクト取得します。(EncoderFallback から継承されます。)
パブリック メソッドパブリック メソッド
参照参照

関連項目

EncoderReplacementFallback クラス
System.Text 名前空間
EncoderReplacementFallbackBuffer
EncoderReplacementFallback
DefaultString


このページでは「.NET Framework クラス ライブラリ リファレンス」からEncoderReplacementFallbackを検索した結果を表示しています。
Weblioに収録されているすべての辞書からEncoderReplacementFallbackを検索する場合は、下記のリンクをクリックしてください。
 全ての辞書からEncoderReplacementFallback を検索

英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「EncoderReplacementFallback」の関連用語

EncoderReplacementFallbackのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



EncoderReplacementFallbackのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2025 Microsoft.All rights reserved.

©2025 GRAS Group, Inc.RSS