Marshal.PtrToStringUni Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Přidělí spravovaný String a zkopíruje do něj celý nebo část nespravovaného řetězce unicode.
Přetížení
PtrToStringUni(IntPtr) |
Přidělí spravované String a zkopíruje do něj všechny znaky až do prvního znaku null z nespravovaného řetězce unicode. |
PtrToStringUni(IntPtr, Int32) |
Přidělí spravovaný String a zkopíruje do něj zadaný počet znaků z nespravovaného řetězce unicode. |
PtrToStringUni(IntPtr)
- Zdroj:
- Marshal.cs
- Zdroj:
- Marshal.cs
- Zdroj:
- Marshal.cs
Přidělí spravované String a zkopíruje do něj všechny znaky až do prvního znaku null z nespravovaného řetězce unicode.
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
Parametry
- ptr
-
IntPtr
nativeint
Adresa prvního znaku nespravovaného řetězce.
Návraty
Spravovaný řetězec, který obsahuje kopii nespravovaného řetězce, pokud hodnota parametru ptr
není null
; v opačném případě tato metoda vrátí null
.
- Atributy
Poznámky
PtrToStringUni je vhodný pro vlastní zařazování nebo pro použití při kombinování spravovaného a nespravovaného kódu. Vzhledem k tomu, že tato metoda vytvoří kopii obsahu nespravovaného řetězce, musíte podle potřeby uvolnit původní řetězec. Tato metoda poskytuje opačné funkce Marshal.StringToCoTaskMemUni než metody a Marshal.StringToHGlobalUni .
Toto rozhraní API odráží definici Unicode ve Windows, což je kódování UTF-16 2 bajtů. Na mnoha platformách bez wchar_t
Windows je datový typ 4 bajty, nikoli 2 bajty. Obraťte se na kompilátor a ověřte, jestli wchar_t
je možné použít nebo char16_t
by se místo toho mělo použít.
Viz také
Platí pro
PtrToStringUni(IntPtr, Int32)
- Zdroj:
- Marshal.cs
- Zdroj:
- Marshal.cs
- Zdroj:
- Marshal.cs
Přidělí spravovaný String a zkopíruje do něj zadaný počet znaků z nespravovaného řetězce unicode.
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
Parametry
- ptr
-
IntPtr
nativeint
Adresa prvního znaku nespravovaného řetězce.
- len
- Int32
Počet znaků Unicode ke zkopírování.
Návraty
Spravovaný řetězec, který obsahuje kopii nespravovaného řetězce, pokud hodnota parametru ptr
není null
; v opačném případě tato metoda vrátí null
.
- Atributy
Poznámky
PtrToStringUni je užitečná pro vlastní zařazování nebo při kombinování spravovaného a nespravovaného kódu. Vzhledem k tomu, že tato metoda vytvoří kopii obsahu nespravovaného řetězce, musíte podle potřeby uvolnit původní řetězec. Tato metoda poskytuje opačné funkce Marshal.StringToCoTaskMemUni než metody a Marshal.StringToHGlobalUni .
Toto rozhraní API odráží definici Unicode ve Windows, což je kódování UTF-16 2 bajtů. Na mnoha platformách bez wchar_t
Windows je datový typ 4 bajty, nikoli 2 bajty. Obraťte se na kompilátor a ověřte, jestli wchar_t
je možné použít nebo char16_t
by se místo toho mělo použít.