Marshal.PtrToStringUTF8 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
重载
PtrToStringUTF8(IntPtr) |
分配托管的 String,并从非托管的 UTF-8 字符串向其复制第一个空字符之前的所有字符。 |
PtrToStringUTF8(IntPtr, Int32) |
分配托管的 String,并从非托管的 UTF8 字符串向其复制指定数目的字符。 |
PtrToStringUTF8(IntPtr)
- Source:
- Marshal.cs
- Source:
- Marshal.cs
- Source:
- Marshal.cs
分配托管的 String,并从非托管的 UTF-8 字符串向其复制第一个空字符之前的所有字符。
public:
static System::String ^ PtrToStringUTF8(IntPtr ptr);
public static string? PtrToStringUTF8 (IntPtr ptr);
[System.Security.SecurityCritical]
public static string PtrToStringUTF8 (IntPtr ptr);
public static string PtrToStringUTF8 (IntPtr ptr);
static member PtrToStringUTF8 : nativeint -> string
[<System.Security.SecurityCritical>]
static member PtrToStringUTF8 : nativeint -> string
Public Shared Function PtrToStringUTF8 (ptr As IntPtr) As String
参数
- ptr
-
IntPtr
nativeint
非托管字符串的第一个字符的地址。
返回
如果 ptr
参数的值不是 null
;则为具有非托管字符串副本的托管字符串;否则此方法将返回 null
。
- 属性
注解
PtrToStringUTF8 可用于自定义封送处理,或者在混合托管代码和非托管代码时使用。 由于此方法创建非托管字符串内容的副本,因此必须根据需要释放原始字符串。 此方法提供方法的 Marshal.StringToCoTaskMemUTF8 相反功能。
另请参阅
适用于
PtrToStringUTF8(IntPtr, Int32)
- Source:
- Marshal.cs
- Source:
- Marshal.cs
- Source:
- Marshal.cs
分配托管的 String,并从非托管的 UTF8 字符串向其复制指定数目的字符。
public:
static System::String ^ PtrToStringUTF8(IntPtr ptr, int byteLen);
public static string PtrToStringUTF8 (IntPtr ptr, int byteLen);
[System.Security.SecurityCritical]
public static string PtrToStringUTF8 (IntPtr ptr, int byteLen);
static member PtrToStringUTF8 : nativeint * int -> string
[<System.Security.SecurityCritical>]
static member PtrToStringUTF8 : nativeint * int -> string
Public Shared Function PtrToStringUTF8 (ptr As IntPtr, byteLen As Integer) As String
参数
- ptr
-
IntPtr
nativeint
非托管字符串的第一个字符的地址。
- byteLen
- Int32
要复制的字节数。
返回
如果 ptr
参数的值不是 null
;则为具有非托管字符串副本的托管字符串;否则此方法将返回 null
。
- 属性
注解
PtrToStringUTF8 对于自定义封送处理或在混合托管代码和非托管代码时很有用。 由于此方法创建非托管字符串内容的副本,因此必须根据需要释放原始字符串。 此方法提供方法的 Marshal.StringToCoTaskMemUTF8 相反功能。