Encoding.BigEndianUnicode プロパティとは? わかりやすく解説

Weblio 辞書 > コンピュータ > .NET Framework クラス ライブラリ リファレンス > Encoding.BigEndianUnicode プロパティの意味・解説 

Encoding.BigEndianUnicode プロパティ

ビッグ エンディアン バイト順を使用する UTF-16 形式エンコーディング取得します

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

Public Shared ReadOnly Property
 BigEndianUnicode As Encoding
Dim value As Encoding

value = Encoding.BigEndianUnicode
public static Encoding BigEndianUnicode { get;
 }
public:
static property Encoding^ BigEndianUnicode {
    Encoding^ get ();
}
/** @property */
public static Encoding get_BigEndianUnicode
 ()

プロパティ
ビッグ エンディアン バイト順を使用する UTF-16 形式Encoding

解説解説

Unicode Standard では、サポートされすべてのスクリプトについて、各文字コード ポイント (数値) を割り当ててます。コード ポイントエンコードには UTF (Unicode Transformation Format) が使用されます。Unicode Standard バージョン 3.2 では、次の UTF使用されています。

UTF-16 エンコーダおよび UTF-32 エンコーダでは、最上位バイト先頭配置されるビッグ エンディアン バイト順、または最下位バイト先頭配置されるリトル エンディアン バイト順が使用されます。たとえば、アルファベット大文字 A (U+0041) は次のように 16 進数シリアル化されます

Encoding は、オプションプリアンブル提供しますプリアンブルは、エンコーディング プロセス得られたバイト シーケンス先頭付加できるバイト配列です。プリアンブルバイト順マーク (Unicode では、コード ポイント U+FEFF) が含まれる場合デコーダバイト順および変換形式 (UTF) を判断できますUnicode バイト順マークは、次のように 16 進数シリアル化されます

通常ネイティブバイト順で Unicode 文字格納した方が効率的です。たとえば、Intelコンピュータなど、リトル エンディアンプラットフォームでは、リトル エンディアンバイト順を使用した方が効率的です。

バイト順とバイト順マーク詳細については、www.unicode.org の「Unicode Standard」を参照してください

使用例使用例

次のコード例は、ビッグ エンディアン バイト順による UTF-16 エンコーディング使用してテキスト ファイル読み取ってます。

Imports System
Imports System.IO

Namespace BigEndianExample
   Public Class Class1
      Public Overloads Shared
 Sub Main()
         ' Read a text file saved with Big Endian Unicode encoding.
         Dim encoding As System.Text.Encoding
 = System.Text.Encoding.BigEndianUnicode
         Dim reader As New
 StreamReader("TextFile.txt", encoding)
         Dim line As String
 = reader.ReadLine()
         While Not (line Is
 Nothing)
            Console.WriteLine(line)
            line = reader.ReadLine()
         End While
      End Sub
   End Class
End Namespace
using System;
using System.IO;

namespace BigEndianExample
{
   public class Class1 
   {
      public static void
 Main(string[] args) 
      {
         // Read a text file saved with Big Endian Unicode encoding.
         System.Text.Encoding encoding = System.Text.Encoding.BigEndianUnicode;
         StreamReader reader = new StreamReader("TextFile.txt",
 encoding);
         string line = reader.ReadLine();
         while (line != null) 
         {
            Console.WriteLine(line);
            line = reader.ReadLine();
         }
       }
    }
}
using namespace System;
using namespace System::IO;
int main()
{
   
   // Read a text file saved with Big Endian Unicode encoding.
   System::Text::Encoding^ encoding = System::Text::Encoding::BigEndianUnicode;
   StreamReader^ reader = gcnew StreamReader( "TextFile.txt",encoding );
   String^ line = reader->ReadLine();
   while ( line != nullptr )
   {
      Console::WriteLine( line );
      line = reader->ReadLine();
   }
}

package BigEndianExample;

import System.*;
import System.IO.*;

public class Class1
{
    public static void main(String[]
 args)
    {
        // Read a text file saved with Big Endian Unicode encoding.
        System.Text.Encoding encoding = System.Text.Encoding.
            get_BigEndianUnicode();
        StreamReader reader = new StreamReader("TextFile.txt",
 encoding);
        String line = reader.ReadLine();
        while((line != null)) {
            Console.WriteLine(line);
            line = reader.ReadLine();
        }
    } //main
} //Class1

次のコード例では、文字配列エンコード必要なバイト数を確認し文字実際にエンコードして、結果バイト表示します

Imports System
Imports System.Text
Imports Microsoft.VisualBasic

Public Class SamplesEncoding   

   Public Shared Sub Main()

      ' The characters to encode:
      '    Latin Small Letter Z (U+007A)
      '    Latin Small Letter A (U+0061)
      '    Combining Breve (U+0306)
      '    Latin Small Letter AE With Acute (U+01FD)
      '    Greek Small Letter Beta (U+03B2)
      '    a high-surrogate value (U+D8FF)
      '    a low-surrogate value (U+DCFF)
      Dim myChars() As Char
 = {"z"c, "a"c, ChrW(&H0306),
 ChrW(&H01FD), ChrW(&H03B2), ChrW(&HD8FF), ChrW(&HDCFF)}
 

      ' Get different encodings.
      Dim u7 As Encoding = Encoding.UTF7
      Dim u8 As Encoding = Encoding.UTF8
      Dim u16LE As Encoding = Encoding.Unicode
      Dim u16BE As Encoding = Encoding.BigEndianUnicode
      Dim u32 As Encoding = Encoding.UTF32

      ' Encode the entire array, and print out the counts and the resulting
 bytes.
      PrintCountsAndBytes(myChars, u7)
      PrintCountsAndBytes(myChars, u8)
      PrintCountsAndBytes(myChars, u16LE)
      PrintCountsAndBytes(myChars, u16BE)
      PrintCountsAndBytes(myChars, u32)

   End Sub 'Main


   Public Shared Sub PrintCountsAndBytes(chars()
 As Char, enc As Encoding)

      ' Display the name of the encoding used.
      Console.Write("{0,-30} :", enc.ToString())

      ' Display the exact byte count.
      Dim iBC As Integer
 = enc.GetByteCount(chars)
      Console.Write(" {0,-3}", iBC)

      ' Display the maximum byte count.
      Dim iMBC As Integer
 = enc.GetMaxByteCount(chars.Length)
      Console.Write(" {0,-3} :", iMBC)

      ' Encode the array of chars.
      Dim bytes As Byte()
 = enc.GetBytes(chars)

      ' Display all the encoded bytes.
      PrintHexBytes(bytes)

   End Sub 'PrintCountsAndBytes


   Public Shared Sub PrintHexBytes(bytes()
 As Byte)

      If bytes Is Nothing
 OrElse bytes.Length = 0 Then
         Console.WriteLine("<none>")
      Else
         Dim i As Integer
         For i = 0 To bytes.Length - 1
            Console.Write("{0:X2} ", bytes(i))
         Next i
         Console.WriteLine()
      End If

   End Sub 'PrintHexBytes 

End Class 'SamplesEncoding


'This code produces the following output.
'
'System.Text.UTF7Encoding       : 18  23  :7A 61 2B 41 77 59 42 2F 51
 4F 79 32 50 2F 63 2F 77 2D
'System.Text.UTF8Encoding       : 12  24  :7A 61 CC 86 C7 BD CE B2 F1
 8F B3 BF
'System.Text.UnicodeEncoding    : 14  16  :7A 00 61 00 06 03 FD 01 B2
 03 FF D8 FF DC
'System.Text.UnicodeEncoding    : 14  16  :00 7A 00 61 03 06 01 FD 03
 B2 D8 FF DC FF
'System.Text.UTF32Encoding      : 24  32  :7A 00 00 00 61 00 00 00 06
 03 00 00 FD 01 00 00 B2 03 00 00 FF FC 04 00

using System;
using System.Text;

public class SamplesEncoding  {

   public static void Main()
  {

      // The characters to encode:
      //    Latin Small Letter Z (U+007A)
      //    Latin Small Letter A (U+0061)
      //    Combining Breve (U+0306)
      //    Latin Small Letter AE With Acute (U+01FD)
      //    Greek Small Letter Beta (U+03B2)
      //    a high-surrogate value (U+D8FF)
      //    a low-surrogate value (U+DCFF)
      char[] myChars = new char[]
 { 'z', 'a', '\u0306', '\u01FD', '\u03B2', '\uD8FF', '\uDCFF' };

      // Get different encodings.
      Encoding  u7    = Encoding.UTF7;
      Encoding  u8    = Encoding.UTF8;
      Encoding  u16LE = Encoding.Unicode;
      Encoding  u16BE = Encoding.BigEndianUnicode;
      Encoding  u32   = Encoding.UTF32;

      // Encode the entire array, and print out the counts and the resulting
 bytes.
      PrintCountsAndBytes( myChars, u7 );
      PrintCountsAndBytes( myChars, u8 );
      PrintCountsAndBytes( myChars, u16LE );
      PrintCountsAndBytes( myChars, u16BE );
      PrintCountsAndBytes( myChars, u32 );

   }


   public static void PrintCountsAndBytes(
 char[] chars, Encoding enc )  {

      // Display the name of the encoding used.
      Console.Write( "{0,-30} :", enc.ToString() );

      // Display the exact byte count.
      int iBC  = enc.GetByteCount( chars );
      Console.Write( " {0,-3}", iBC );

      // Display the maximum byte count.
      int iMBC = enc.GetMaxByteCount( chars.Length );
      Console.Write( " {0,-3} :", iMBC );

      // Encode the array of chars.
      byte[] bytes = enc.GetBytes( chars );

      // Display all the encoded bytes.
      PrintHexBytes( bytes );

   }


   public static void PrintHexBytes(
 byte[] bytes )  {

      if (( bytes == null ) || ( bytes.Length
 == 0 ))
         Console.WriteLine( "<none>" );
      else  {
         for ( int i = 0; i < bytes.Length;
 i++ )
            Console.Write( "{0:X2} ", bytes[i] );
         Console.WriteLine();
      }

   }

}


/* 
This code produces the following output.

System.Text.UTF7Encoding       : 18  23  :7A 61 2B 41 77 59 42 2F 51 4F 79 32 50
 2F 63 2F 77 2D
System.Text.UTF8Encoding       : 12  24  :7A 61 CC 86 C7 BD CE B2 F1 8F B3 BF
System.Text.UnicodeEncoding    : 14  16  :7A 00 61 00 06 03 FD 01 B2 03 FF D8 FF
 DC
System.Text.UnicodeEncoding    : 14  16  :00 7A 00 61 03 06 01 FD 03 B2 D8 FF DC
 FF
System.Text.UTF32Encoding      : 24  32  :7A 00 00 00 61 00 00 00 06 03 00 00 FD
 01 00 00 B2 03 00 00 FF FC 04 00

*/

using namespace System;
using namespace System::Text;
void PrintCountsAndBytes( array<Char>^chars, Encoding^ enc
 );
void PrintHexBytes( array<Byte>^bytes );
int main()
{
   
   // The characters to encode:
   //    Latin Small Letter Z (U+007A)
   //    Latin Small Letter A (U+0061)
   //    Combining Breve (U+0306)
   //    Latin Small Letter AE With Acute (U+01FD)
   //    Greek Small Letter Beta (U+03B2)
   //    a high-surrogate value (U+D8FF)
   //    a low-surrogate value (U+DCFF)
   array<Char>^myChars = gcnew array<Char>{
      L'z','a',L'\u0306',L'\u01FD',L'\u03B2',L'\xD8FF',L'\xDCFF'
   };
   
   // Get different encodings.
   Encoding^ u7 = Encoding::UTF7;
   Encoding^ u8 = Encoding::UTF8;
   Encoding^ u16LE = Encoding::Unicode;
   Encoding^ u16BE = Encoding::BigEndianUnicode;
   Encoding^ u32 = Encoding::UTF32;
   
   // Encode the entire array, and print out the counts and the resulting
 bytes.
   PrintCountsAndBytes( myChars, u7 );
   PrintCountsAndBytes( myChars, u8 );
   PrintCountsAndBytes( myChars, u16LE );
   PrintCountsAndBytes( myChars, u16BE );
   PrintCountsAndBytes( myChars, u32 );
}

void PrintCountsAndBytes( array<Char>^chars, Encoding^ enc
 )
{
   
   // Display the name of the encoding used.
   Console::Write( "{0,-30} :", enc );
   
   // Display the exact byte count.
   int iBC = enc->GetByteCount( chars );
   Console::Write( " {0,-3}", iBC );
   
   // Display the maximum byte count.
   int iMBC = enc->GetMaxByteCount( chars->Length );
   Console::Write( " {0,-3} :", iMBC );
   
   // Encode the array of chars.
   array<Byte>^bytes = enc->GetBytes( chars );
   
   // Display all the encoded bytes.
   PrintHexBytes( bytes );
}

void PrintHexBytes( array<Byte>^bytes )
{
   if ( (bytes == nullptr) || (bytes->Length == 0) )
      Console::WriteLine( "<none>" );
   else
   {
      for ( int i = 0; i < bytes->Length;
 i++ )
         Console::Write( "{0:X2} ", bytes[ i ] );
      Console::WriteLine();
   }
}

/* 
This code produces the following output.

System.Text.UTF7Encoding       : 18  23  :7A 61 2B 41 77 59 42 2F 51 4F 79 32 50
 2F 63 2F 77 2D
System.Text.UTF8Encoding       : 12  24  :7A 61 CC 86 C7 BD CE B2 F1 8F B3 BF
System.Text.UnicodeEncoding    : 14  16  :7A 00 61 00 06 03 FD 01 B2 03 FF D8 FF
 DC
System.Text.UnicodeEncoding    : 14  16  :00 7A 00 61 03 06 01 FD 03 B2 D8 FF DC
 FF
System.Text.UTF32Encoding      : 24  32  :7A 00 00 00 61 00 00 00 06 03 00 00 FD
 01 00 00 B2 03 00 00 FF FC 04 00

*/
import System.*;
import System.Text.*;
import System.Byte;

public class SamplesEncoding
{
    public static void main(String[]
 args)
    {
        // The characters to encode:
        //    Latin Small Letter Z (U+007A)
        //    Latin Small Letter A (U+0061)
        //    Combining Breve (U+0306)
        //    Latin Small Letter AE With Acute (U+01FD)
        //    Greek Small Letter Beta (U+03B2)
        //    a high-surrogate value (U+D8FF)
        //    a low-surrogate value (U+DCFF)
        char myChars[] = new char[]
 {
            'z', 'a', '\u0306', '\u01FD', '\u03B2', '\uD8FF', '\uDCFF'
        };

        // Get different encodings.
        Encoding u7 = Encoding.get_UTF7();
        Encoding u8 = Encoding.get_UTF8();
        Encoding u16LE = Encoding.get_Unicode();
        Encoding u16BE = Encoding.get_BigEndianUnicode();
        Encoding u32 = Encoding.get_UTF32();

        // Encode the entire array, and print out the counts
        // and the resulting bytes.
        PrintCountsAndBytes(myChars, u7);
        PrintCountsAndBytes(myChars, u8);
        PrintCountsAndBytes(myChars, u16LE);
        PrintCountsAndBytes(myChars, u16BE);
        PrintCountsAndBytes(myChars, u32);
    } //main

    public static void PrintCountsAndBytes(char
 chars[], Encoding enc)
    {
        // Display the name of the encoding used.
        Console.Write("{0,-30} :", enc.toString());

        // Display the exact byte count.
        int iBC = enc.GetByteCount(chars);
        Console.Write(" {0,-3}", String.valueOf(iBC));

        // Display the maximum byte count.
        int iMBC = enc.GetMaxByteCount(chars.length);
        Console.Write(" {0,-3} :", String.valueOf(iMBC));

        // Encode the array of chars.
        ubyte bytes[] = enc.GetBytes(chars);

        // Display all the encoded bytes.
        PrintHexBytes(bytes);
    } //PrintCountsAndBytes

    public static void PrintHexBytes(ubyte
 bytes[])
    {
        if(bytes == null || bytes.length ==
 0) {
            Console.WriteLine("<none>");
        }
        else {
            for(int i = 0; i < bytes.length;
 i++) {
                Console.Write("{0:X2} ",
                        ((System.Byte)bytes[i]).ToString("X2"));
            }
            Console.WriteLine();
        }
    } //PrintHexBytes
} //SamplesEncoding

/* 
This code produces the following output.

System.Text.UTF7Encoding       : 18  23  :7A 61 2B 41 77 59 42 2F 51 4F 79 32 50
 2F 63 2F 77 2D
System.Text.UTF8Encoding       : 12  24  :7A 61 CC 86 C7 BD CE B2 F1 8F B3 BF
System.Text.UnicodeEncoding    : 14  16  :7A 00 61 00 06 03 FD 01 B2 03 FF D8 FF
 DC
System.Text.UnicodeEncoding    : 14  16  :00 7A 00 61 03 06 01 FD 03 B2 D8 FF DC
 FF
System.Text.UTF32Encoding      : 24  32  :7A 00 00 00 61 00 00 00 06 03 00 00 FD
 01 00 00 B2 03 00 00 FF FC 04 00

*/

プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照



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

辞書ショートカット

すべての辞書の索引

「Encoding.BigEndianUnicode プロパティ」の関連用語

Encoding.BigEndianUnicode プロパティのお隣キーワード
検索ランキング

   

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



Encoding.BigEndianUnicode プロパティのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

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

©2025 GRAS Group, Inc.RSS