次の方法で共有


UTF8Encoding.GetBytes メソッド (String)

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

Overrides Overloads Public Function GetBytes( _
   ByVal s As String _) As Byte()
[C#]
public override byte[] GetBytes(strings);
[C++]
public: unsigned char GetBytes(String* s)  __gc[];
[JScript]
public override function GetBytes(
   s : String) : Byte[];

パラメータ

  • s
    エンコードする文字列。

戻り値

s からエンコードされた文字を格納するバイト配列。

例外

例外の種類 条件
ArgumentNullException s が null 参照 (Visual Basic では Nothing) です。
ArgumentException エンコーディング中に、サロゲート ペアの無効な上位メンバまたは下位メンバが認識されました。このインスタンスの UTF8Encoding コンストラクタは、無効なエンコーディングが検出された場合に例外をスローするように指定されています。

解説

エラー検出がオフのときに、無効なサロゲート シーケンスが検出された場合、無効な文字は無視され、返されたバイト配列にエンコードされず、例外もスローされません。

使用例

[Visual Basic, C#, C++] GetBytes メソッドを使用して、 UTF8EncodingString chars の文字をエンコードし、その結果をバイト配列 bytes に返す方法を次の例に示します。コンソールには、 chars をエンコードするときに使用するバイト数とエンコードされたバイトが表示されます。

 
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()
      
      bytes = utf8.GetBytes(chars)
      
      Console.WriteLine("{0} bytes used to encode string.", bytes.Length)
      
      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();
        
        bytes = utf8.GetBytes(chars);
        
        Console.WriteLine(
            "{0} bytes used to encode string.", bytes.Length
        );

        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();

   bytes = utf8 -> GetBytes(chars);

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

   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++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン 言語のフィルタ をクリックします。

必要条件

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ, .NET Compact Framework - Windows CE .NET, Common Language Infrastructure (CLI) Standard

参照

UTF8Encoding クラス | UTF8Encoding メンバ | System.Text 名前空間 | UTF8Encoding.GetBytes オーバーロードの一覧 | GetByteCount | GetMaxByteCount