UTF8Encoding.GetChars メソッド
指定したバイト配列から一連の要素をデコードし、その結果を Unicode 文字配列の指定した一連の要素に格納します。
オーバーロードの一覧
指定したバイト配列からある範囲の要素をデコードし、その結果を Unicode 文字配列の指定した範囲の要素に格納します。
.NET Compact Framework でもサポート。
[Visual Basic] Overloads Overrides Public Function GetChars(Byte(), Integer, Integer, Char(), Integer) As Integer
[C#] public override int GetChars(byte[], int, int, char[], int);
[C++] public: int GetChars(unsigned char __gc[], int, int, __wchar_t __gc[], int);
[JScript] public override function GetChars(Byte[], int, int, Char[], int) : int;
Encoding から継承されます。
.NET Compact Framework でもサポート。
[Visual Basic] Overloads Public Overridable Function GetChars(Byte()) As Char()
[C++] public: virtual __wchar_t GetChars(unsigned char __gc[]) __gc[];
Encoding から継承されます。
.NET Compact Framework でもサポート。
[Visual Basic] Overloads Public Overridable Function GetChars(Byte(), Integer, Integer) As Char()
[C++] public: virtual __wchar_t GetChars(unsigned char __gc[], int, int) __gc[];
[JScript] public function GetChars(Byte[], int, int) : Char[];
使用例
[Visual Basic, C#, C++] GetChars メソッドを使用して、バイト配列 bytes
からある範囲の要素をデコードし、その結果を文字配列 chars
に格納する方法を次の例に示します。 GetCharCount メソッドは、デコードされた要素を格納するために必要な文字数を計算するときに使用します。
[Visual Basic, C#, C++] メモ ここでは、GetChars のオーバーロード形式のうちの 1 つだけについて、使用例を示します。その他の例については、各オーバーロード形式のトピックを参照してください。
Imports System
Imports System.Text
Class UTF8EncodingExample
Public Shared Sub Main()
Dim chars() As Char
Dim bytes() As Byte = { _
85, 84, 70, 56, 32, 69, 110, _
99, 111, 100, 105, 110, 103, 32, _
69, 120, 97, 109, 112, 108, 101 _
}
Dim utf8 As New UTF8Encoding()
Dim charCount As Integer = utf8.GetCharCount(bytes, 2, 13)
chars = New Char(charCount - 1) {}
Dim charsDecodedCount As Integer = utf8.GetChars(bytes, 2, 13, chars, 0)
Console.WriteLine("{0} characters used to decode bytes.", charsDecodedCount)
Console.Write("Decoded chars: ")
Dim c As Char
For Each c In chars
Console.Write("[{0}]", c)
Next c
Console.WriteLine()
End Sub 'Main
End Class 'UTF8EncodingExample
[C#]
using System;
using System.Text;
class UTF8EncodingExample {
public static void Main() {
Char[] chars;
Byte[] bytes = new Byte[] {
85, 84, 70, 56, 32, 69, 110,
99, 111, 100, 105, 110, 103, 32,
69, 120, 97, 109, 112, 108, 101
};
UTF8Encoding utf8 = new UTF8Encoding();
int charCount = utf8.GetCharCount(bytes, 2, 13);
chars = new Char[charCount];
int charsDecodedCount = utf8.GetChars(bytes, 2, 13, chars, 0);
Console.WriteLine(
"{0} characters used to decode bytes.", charsDecodedCount
);
Console.Write("Decoded chars: ");
foreach (Char c in chars) {
Console.Write("[{0}]", c);
}
Console.WriteLine();
}
}
[C++]
#using <mscorlib.dll>
using namespace System;
using namespace System::Text;
using namespace System::Collections;
int main()
{
Char chars[];
Byte bytes[] =
{
85, 84, 70, 56, 32, 69, 110,
99, 111, 100, 105, 110, 103, 32,
69, 120, 97, 109, 112, 108, 101
};
UTF8Encoding* utf8 = new UTF8Encoding();
int charCount = utf8 -> GetCharCount(bytes, 2, 13);
chars = new Char[charCount];
int charsDecodedCount = utf8 -> GetChars(bytes, 2, 13, chars, 0);
Console::WriteLine(S"{0} characters used to decode bytes.", __box(charsDecodedCount));
Console::Write(S"Decoded chars: ");
IEnumerator* myEnum = chars->GetEnumerator();
while (myEnum->MoveNext())
{
Char* c = __try_cast<Char*>(myEnum->Current);
Console::Write(S"[{0}]", c -> ToString());
}
Console::WriteLine();
}
[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン をクリックします。