次の方法で共有


UTF8Encoding.GetBytes メソッド

Unicode 文字配列または String から指定した範囲の文字をエンコードし、その結果を指定したバイト配列に格納します。

オーバーロードの一覧

指定した String から文字をエンコードし、その結果をバイト配列に返します。

.NET Compact Framework でもサポート。

[Visual Basic] Overloads Overrides Public Function GetBytes(String) As Byte()

[C#] public override byte[] GetBytes(string);

[C++] public: unsigned char GetBytes(String*) __gc[];

[JScript] public override function GetBytes(String) : Byte[];

Unicode 文字配列から指定した範囲の要素をエンコードし、その結果をバイト配列内の指定した範囲の要素に格納します。

.NET Compact Framework でもサポート。

[Visual Basic] Overloads Overrides Public Function GetBytes(Char(), Integer, Integer, Byte(), Integer) As Integer

[C#] public override int GetBytes(char[], int, int, byte[], int);

[C++] public: int GetBytes(__wchar_t __gc[], int, int, unsigned char __gc[], int);

[JScript] public override function GetBytes(Char[], int, int, Byte[], int) : int;

String から指定した範囲の文字をエンコードし、その結果をバイト配列内の指定した範囲の要素に格納します。

.NET Compact Framework でもサポート。

[Visual Basic] Overloads Overrides Public Function GetBytes(String, Integer, Integer, Byte(), Integer) As Integer

[C#] public override int GetBytes(string, int, int, byte[], int);

[C++] public: int GetBytes(String*, int, int, unsigned char __gc[], int);

[JScript] public override function GetBytes(String, int, int, Byte[], int) : int;

Encoding から継承されます。

.NET Compact Framework でもサポート。

[Visual Basic] Overloads Public Overridable Function GetBytes(Char()) As Byte()

[C#] public virtual byte[] GetBytes(char[]);

[C++] public: virtual unsigned char GetBytes(__wchar_t __gc[]) __gc[];

[JScript] public function GetBytes(Char[]) : Byte[];

Encoding から継承されます。

.NET Compact Framework でもサポート。

[Visual Basic] Overloads Public Overridable Function GetBytes(Char(), Integer, Integer) As Byte()

[C#] public virtual byte[] GetBytes(char[], int, int);

[C++] public: virtual unsigned char GetBytes(__wchar_t __gc[], int, int) __gc[];

[JScript] public function GetBytes(Char[], int, int) : Byte[];

使用例

[Visual Basic, C#, C++] GetBytes メソッドを使用して、 String chars からある範囲の文字をエンコードし、その結果をバイト配列 bytes 内のある範囲の要素に格納する方法を次の例に示します。 GetByteCount メソッドは、エンコードされた文字を格納するために必要なバイト数を確認するときに使用します。

[Visual Basic, C#, C++] メモ   ここでは、GetBytes のオーバーロード形式のうちの 1 つだけについて、使用例を示します。その他の例については、各オーバーロード形式のトピックを参照してください。

 
Imports System
Imports System.Text

Class UTF8EncodingExample
    
    Public Shared Sub Main()
        Dim bytes() As Byte
        Dim chars As String = "UTF8 Encoding Example"
        
        Dim utf8 As New UTF8Encoding()
        
        Dim byteCount As Integer = utf8.GetByteCount(chars.ToCharArray(), 0, 13)
        bytes = New Byte(byteCount - 1) {}
        Dim bytesEncodedCount As Integer = utf8.GetBytes(chars, 0, 13, bytes, 0)
        
        Console.WriteLine("{0} bytes used to encode string.", bytesEncodedCount)
        
        Console.Write("Encoded bytes: ")
        Dim b As Byte
        For Each b In  bytes
            Console.Write("[{0}]", b)
        Next b
        Console.WriteLine()
    End Sub 'Main
End Class 'UTF8EncodingExample

[C#] 
using System;
using System.Text;

class UTF8EncodingExample {
    public static void Main() {
        Byte[] bytes;
        String chars = "UTF8 Encoding Example";
        
        UTF8Encoding utf8 = new UTF8Encoding();
        
        int byteCount = utf8.GetByteCount(chars.ToCharArray(), 0, 13);
        bytes = new Byte[byteCount];
        int bytesEncodedCount = utf8.GetBytes(chars, 0, 13, bytes, 0);
        
        Console.WriteLine(
            "{0} bytes used to encode string.", bytesEncodedCount
        );

        Console.Write("Encoded bytes: ");
        foreach (Byte b in bytes) {
            Console.Write("[{0}]", b);
        }
        Console.WriteLine();
    }
}

[C++] 
#using <mscorlib.dll>
using namespace System;
using namespace System::Text;
using namespace System::Collections;

int main()
{
   Byte bytes[];
   String * chars = S"UTF8 Encoding Example";

   UTF8Encoding* utf8 = new UTF8Encoding();

   int byteCount = utf8 -> GetByteCount(chars -> ToCharArray(), 0, 13);
   bytes = new Byte[byteCount];
   int bytesEncodedCount = utf8 -> GetBytes(chars, 0, 13, bytes, 0);

   Console::WriteLine(S"{0} bytes used to encode string.", __box(bytesEncodedCount));

   Console::Write(S"Encoded bytes: ");
   IEnumerator* myEnum = bytes->GetEnumerator();
   while (myEnum->MoveNext())
   {
      Byte b = *__try_cast<Byte*>(myEnum->Current);
      Console::Write(S"[{0}]", __box(b));
   }
   Console::WriteLine();
}

[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン 言語のフィルタ をクリックします。

参照

UTF8Encoding クラス | UTF8Encoding メンバ | System.Text 名前空間