Marshal.PtrToStringUni Метод

Определение

Выделяет управляемый объект и копирует все или часть неуправляемой String строки Юникода в него.

Перегрузки

Имя Описание
PtrToStringUni(IntPtr)

Выделяет управляемый String и копирует все символы до первого null-символа из неуправляемой строки Юникода в него.

PtrToStringUni(IntPtr, Int32)

Выделяет управляемое String и копирует указанное число символов из неуправляемой строки Юникода в него.

PtrToStringUni(IntPtr)

Исходный код:
Marshal.cs
Исходный код:
Marshal.cs
Исходный код:
Marshal.cs
Исходный код:
Marshal.cs
Исходный код:
Marshal.cs

Выделяет управляемый String и копирует все символы до первого null-символа из неуправляемой строки Юникода в него.

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

Параметры

ptr
IntPtr

nativeint

Адрес первого символа неуправляемой строки.

Возвращаемое значение

Управляемая строка, содержащая копию неуправляемой строки, если значение ptr параметра не nullявляется; в противном случае возвращается этот метод null.

Атрибуты

Комментарии

PtrToStringUni полезно для пользовательского маршалинга или для использования при сочетании управляемого и неуправляемого кода. Так как этот метод создает копию содержимого неуправляемой строки, необходимо освободить исходную строку соответствующим образом. Этот метод предоставляет противоположные функциональные возможности Marshal.StringToCoTaskMemUni методов и Marshal.StringToHGlobalUni методов.

Этот API отражает определение Windows Юникода, которое является кодировкой UTF-16 2-байтов. На многих платформах, отличных от Windows, тип данных wchar_t равен 4-байтам, а не 2-байтам. Обратитесь к компилятору, чтобы подтвердить, можно ли wchar_t использовать или char16_t использовать его.

См. также раздел

Применяется к

PtrToStringUni(IntPtr, Int32)

Исходный код:
Marshal.cs
Исходный код:
Marshal.cs
Исходный код:
Marshal.cs
Исходный код:
Marshal.cs
Исходный код:
Marshal.cs

Выделяет управляемое String и копирует указанное число символов из неуправляемой строки Юникода в него.

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

Параметры

ptr
IntPtr

nativeint

Адрес первого символа неуправляемой строки.

len
Int32

Количество символов Юникода для копирования.

Возвращаемое значение

Управляемая строка, содержащая копию неуправляемой строки, если значение ptr параметра не nullявляется; в противном случае возвращается этот метод null.

Атрибуты

Комментарии

PtrToStringUni полезно для пользовательского маршалинга или при сочетании управляемого и неуправляемого кода. Так как этот метод создает копию содержимого неуправляемой строки, необходимо освободить исходную строку соответствующим образом. Этот метод предоставляет противоположные функциональные возможности Marshal.StringToCoTaskMemUni методов и Marshal.StringToHGlobalUni методов.

Этот API отражает определение Windows Юникода, которое является кодировкой UTF-16 2-байтов. На многих платформах, отличных от Windows, тип данных wchar_t равен 4-байтам, а не 2-байтам. Обратитесь к компилятору, чтобы подтвердить, можно ли wchar_t использовать или char16_t использовать его.

См. также раздел

Применяется к