Bagikan melalui


Marshal.PtrToStringUni Metode

Definisi

Mengalokasikan terkelola String dan menyalin semua atau sebagian string Unicode yang tidak dikelola ke dalamnya.

Overload

PtrToStringUni(IntPtr)

Mengalokasikan karakter String terkelola dan menyalin semua karakter hingga karakter null pertama dari string Unicode yang tidak dikelola ke dalamnya.

PtrToStringUni(IntPtr, Int32)

Mengalokasikan terkelola String dan menyalin sejumlah karakter tertentu dari string Unicode yang tidak dikelola ke dalamnya.

PtrToStringUni(IntPtr)

Sumber:
Marshal.cs
Sumber:
Marshal.cs
Sumber:
Marshal.cs

Mengalokasikan karakter String terkelola dan menyalin semua karakter hingga karakter null pertama dari string Unicode yang tidak dikelola ke dalamnya.

public:
 static System::String ^ PtrToStringUni(IntPtr ptr);
[System.Security.SecurityCritical]
public static string PtrToStringUni (IntPtr ptr);
public static string? PtrToStringUni (IntPtr ptr);
public static string PtrToStringUni (IntPtr ptr);
[<System.Security.SecurityCritical>]
static member PtrToStringUni : nativeint -> string
static member PtrToStringUni : nativeint -> string
Public Shared Function PtrToStringUni (ptr As IntPtr) As String

Parameter

ptr
IntPtr

nativeint

Alamat karakter pertama dari string yang tidak dikelola.

Mengembalikan

String terkelola yang menyimpan salinan string yang tidak dikelola jika nilai ptr parameter tidak ; jika tidak null, metode ini mengembalikan null.

Atribut

Keterangan

PtrToStringUni berguna untuk marshaling kustom atau untuk digunakan saat mencampur kode terkelola dan tidak terkelola. Karena metode ini membuat salinan konten string yang tidak dikelola, Anda harus membebaskan string asli yang sesuai. Metode ini menyediakan fungsionalitas yang berlawanan dari Marshal.StringToCoTaskMemUni metode dan Marshal.StringToHGlobalUni .

API ini mencerminkan definisi Windows Unicode, yang merupakan pengodean UTF-16 2-byte. Pada banyak platform non-Windows, wchar_t jenis data adalah 4-byte, bukan 2-byte. Konsultasikan dengan kompilator Anda untuk mengonfirmasi apakah wchar_t dapat digunakan atau char16_t harus digunakan sebagai gantinya.

Lihat juga

Berlaku untuk

PtrToStringUni(IntPtr, Int32)

Sumber:
Marshal.cs
Sumber:
Marshal.cs
Sumber:
Marshal.cs

Mengalokasikan terkelola String dan menyalin sejumlah karakter tertentu dari string Unicode yang tidak dikelola ke dalamnya.

public:
 static System::String ^ PtrToStringUni(IntPtr ptr, int len);
[System.Security.SecurityCritical]
public static string PtrToStringUni (IntPtr ptr, int len);
public static string PtrToStringUni (IntPtr ptr, int len);
[<System.Security.SecurityCritical>]
static member PtrToStringUni : nativeint * int -> string
static member PtrToStringUni : nativeint * int -> string
Public Shared Function PtrToStringUni (ptr As IntPtr, len As Integer) As String

Parameter

ptr
IntPtr

nativeint

Alamat karakter pertama dari string yang tidak dikelola.

len
Int32

Jumlah karakter Unicode yang akan disalin.

Mengembalikan

String terkelola yang menyimpan salinan string yang tidak dikelola jika nilai ptr parameter tidak ; jika tidak null, metode ini mengembalikan null.

Atribut

Keterangan

PtrToStringUni berguna untuk marshaling kustom atau saat mencampur kode yang dikelola dan tidak dikelola. Karena metode ini membuat salinan konten string yang tidak dikelola, Anda harus membebaskan string asli yang sesuai. Metode ini menyediakan fungsionalitas yang berlawanan dari Marshal.StringToCoTaskMemUni metode dan Marshal.StringToHGlobalUni .

API ini mencerminkan definisi Windows Unicode, yang merupakan pengodean UTF-16 2-byte. Pada banyak platform non-Windows, wchar_t jenis data adalah 4-byte, bukan 2-byte. Konsultasikan dengan kompilator Anda untuk mengonfirmasi apakah wchar_t dapat digunakan atau char16_t harus digunakan sebagai gantinya.

Lihat juga

Berlaku untuk