String 构造函数

定义

初始化 String 类的新实例。

重载

String(Char*)

String 类的新实例初始化为指向 Unicode 字符数组的指定指针指示的值。

String(Char[])

String 类的新实例初始化为指定字符数组中指示的 Unicode 字符。

String(ReadOnlySpan<Char>)

String 类的新实例初始化为指定只读范围中指示的 Unicode 字符。

String(SByte*)

String 类的新实例初始化为指向 8 位带符号整数数组的指针指示的值。

String(Char, Int32)

String 类的新实例初始化为指定的 Unicode 字符重复指定的次数所指示的值。

String(Char*, Int32, Int32)

String 类的新实例初始化为指向 Unicode 字符数组的指定指针、该数组中的起始字符位置以及长度的值。

String(Char[], Int32, Int32)

String 类的新实例初始化为 Unicode 字符数组、该数组中的起始字符位置和长度指示的值。

String(SByte*, Int32, Int32)

String 类的新实例初始化为指定指针指示的值,该值指向 8 位有符号整数的数组、该数组中的起始位置以及长度。

String(SByte*, Int32, Int32, Encoding)

String 类的新实例初始化为由指定指针指示的值,该数组中具有 8 位有符号整数的数组、该数组中的起始位置、长度和 Encoding 对象。

注解

有关此 API 的详细信息,请参阅字符串构造函数补充 API 备注。

String(Char*)

Source:
String.cs
Source:
String.cs
Source:
String.cs

重要

此 API 不符合 CLS。

String 类的新实例初始化为指向 Unicode 字符数组的指定指针指示的值。

public:
 String(char* value);
[System.CLSCompliant(false)]
[System.Security.SecurityCritical]
public String (char* value);
[System.CLSCompliant(false)]
public String (char* value);
[<System.CLSCompliant(false)>]
[<System.Security.SecurityCritical>]
new string : nativeptr<char> -> string
[<System.CLSCompliant(false)>]
new string : nativeptr<char> -> string

参数

value
Char*

指向以 null 结尾的 Unicode 字符数组的指针。

属性

例外

当前进程对所有寻址字符没有读取访问权限。

value 指定包含无效 Unicode 字符的数组,或者 value 指定小于 64000 的地址。

注解

注意

有关此构造函数重载和其他 String 构造函数重载的示例和全面的用法信息,请参阅 String 构造函数摘要。

适用于

String(Char[])

Source:
String.cs
Source:
String.cs
Source:
String.cs

String 类的新实例初始化为指定字符数组中指示的 Unicode 字符。

public:
 String(cli::array <char> ^ value);
public String (char[] value);
public String (char[]? value);
new string : char[] -> string
Public Sub New (value As Char())

参数

value
Char[]

Unicode 字符数组。

注解

注意

有关此构造函数重载和其他 String 构造函数重载的示例和全面的用法信息,请参阅 String 构造函数摘要。

适用于

String(ReadOnlySpan<Char>)

Source:
String.cs
Source:
String.cs
Source:
String.cs

String 类的新实例初始化为指定只读范围中指示的 Unicode 字符。

public:
 String(ReadOnlySpan<char> value);
public String (ReadOnlySpan<char> value);
new string : ReadOnlySpan<char> -> string
Public Sub New (value As ReadOnlySpan(Of Char))

参数

value
ReadOnlySpan<Char>

Unicode 字符的只读范围。

适用于

String(SByte*)

Source:
String.cs
Source:
String.cs
Source:
String.cs

重要

此 API 不符合 CLS。

String 类的新实例初始化为指向 8 位带符号整数数组的指针指示的值。

public:
 String(System::SByte* value);
[System.CLSCompliant(false)]
public String (sbyte* value);
[System.CLSCompliant(false)]
[System.Security.SecurityCritical]
public String (sbyte* value);
[<System.CLSCompliant(false)>]
new string : nativeptr<sbyte> -> string
[<System.CLSCompliant(false)>]
[<System.Security.SecurityCritical>]
new string : nativeptr<sbyte> -> string

参数

value
SByte*

指向以 null 结尾的 8 位带符号整数数组的指针。 整数使用 Windows 上的当前系统代码页编码(称为CP_ACP)和非 Windows 上的 UTF-8 编码进行解释。

属性

例外

value null

不能使用 value初始化 String 的新实例,假设 value 在 ANSI 中编码。

要初始化的新字符串的长度(由 value的 null 终止字符确定)太大而无法分配。

value 指定无效地址。

注解

注意

有关此构造函数重载和其他 String 构造函数重载的示例和全面的用法信息,请参阅 String 构造函数摘要。

适用于

String(Char, Int32)

Source:
String.cs
Source:
String.cs
Source:
String.cs

String 类的新实例初始化为指定的 Unicode 字符重复指定的次数所指示的值。

public:
 String(char c, int count);
public String (char c, int count);
new string : char * int -> string
Public Sub New (c As Char, count As Integer)

参数

c
Char

Unicode 字符。

count
Int32

发生 c 的次数。

例外

count 小于零。

注解

注意

有关此构造函数重载和其他 String 构造函数重载的示例和全面的用法信息,请参阅 String 构造函数摘要。

适用于

String(Char*, Int32, Int32)

Source:
String.cs
Source:
String.cs
Source:
String.cs

重要

此 API 不符合 CLS。

String 类的新实例初始化为指向 Unicode 字符数组的指定指针、该数组中的起始字符位置以及长度的值。

public:
 String(char* value, int startIndex, int length);
[System.CLSCompliant(false)]
[System.Security.SecurityCritical]
public String (char* value, int startIndex, int length);
[System.CLSCompliant(false)]
public String (char* value, int startIndex, int length);
[<System.CLSCompliant(false)>]
[<System.Security.SecurityCritical>]
new string : nativeptr<char> * int * int -> string
[<System.CLSCompliant(false)>]
new string : nativeptr<char> * int * int -> string

参数

value
Char*

指向 Unicode 字符数组的指针。

startIndex
Int32

value内的起始位置。

length
Int32

要使用的 value 中的字符数。

属性

例外

startIndexlength 小于零,value + startIndex 导致指针溢出,或者当前进程没有对所有寻址字符的读取访问权限。

value 指定包含无效 Unicode 字符的数组,或者 value + startIndex 指定小于 64000 的地址。

注解

注意

有关此构造函数重载和其他 String 构造函数重载的示例和全面的用法信息,请参阅 String 构造函数摘要。

适用于

String(Char[], Int32, Int32)

Source:
String.cs
Source:
String.cs
Source:
String.cs

String 类的新实例初始化为 Unicode 字符数组、该数组中的起始字符位置和长度指示的值。

public:
 String(cli::array <char> ^ value, int startIndex, int length);
public String (char[] value, int startIndex, int length);
new string : char[] * int * int -> string
Public Sub New (value As Char(), startIndex As Integer, length As Integer)

参数

value
Char[]

Unicode 字符数组。

startIndex
Int32

value内的起始位置。

length
Int32

要使用的 value 中的字符数。

例外

value null

startIndexlength 小于零。

-或-

startIndexlength 的总和大于 value中的元素数。

注解

注意

有关此构造函数重载和其他 String 构造函数重载的示例和全面的用法信息,请参阅 String 构造函数摘要。

适用于

String(SByte*, Int32, Int32)

Source:
String.cs
Source:
String.cs
Source:
String.cs

重要

此 API 不符合 CLS。

String 类的新实例初始化为指定指针指示的值,该值指向 8 位有符号整数的数组、该数组中的起始位置以及长度。

public:
 String(System::SByte* value, int startIndex, int length);
[System.CLSCompliant(false)]
public String (sbyte* value, int startIndex, int length);
[System.CLSCompliant(false)]
[System.Security.SecurityCritical]
public String (sbyte* value, int startIndex, int length);
[<System.CLSCompliant(false)>]
new string : nativeptr<sbyte> * int * int -> string
[<System.CLSCompliant(false)>]
[<System.Security.SecurityCritical>]
new string : nativeptr<sbyte> * int * int -> string

参数

value
SByte*

指向 8 位带符号整数数组的指针。 整数使用 Windows 上的当前系统代码页编码(称为CP_ACP)和非 Windows 上的 UTF-8 编码进行解释。

startIndex
Int32

value内的起始位置。

length
Int32

要使用的 value 中的字符数。

属性

例外

value null

startIndexlength 小于零。

-或-

value + startIndex 指定的地址对于当前平台来说太大;即地址计算溢出。

-或-

要初始化的新字符串的长度太大,无法分配。

value + startIndex 指定的地址小于 64K。

-或-

不能使用 value初始化 String 的新实例,假设 value 在 ANSI 中编码。

valuestartIndexlength 共同指定无效地址。

注解

注意

有关此构造函数重载和其他 String 构造函数重载的示例和全面的用法信息,请参阅 String 构造函数摘要。

适用于

String(SByte*, Int32, Int32, Encoding)

Source:
String.cs
Source:
String.cs
Source:
String.cs

重要

此 API 不符合 CLS。

String 类的新实例初始化为由指定指针指示的值,该数组中具有 8 位有符号整数的数组、该数组中的起始位置、长度和 Encoding 对象。

public:
 String(System::SByte* value, int startIndex, int length, System::Text::Encoding ^ enc);
[System.CLSCompliant(false)]
public String (sbyte* value, int startIndex, int length, System.Text.Encoding enc);
[System.CLSCompliant(false)]
[System.Security.SecurityCritical]
public String (sbyte* value, int startIndex, int length, System.Text.Encoding enc);
[<System.CLSCompliant(false)>]
new string : nativeptr<sbyte> * int * int * System.Text.Encoding -> string
[<System.CLSCompliant(false)>]
[<System.Security.SecurityCritical>]
new string : nativeptr<sbyte> * int * int * System.Text.Encoding -> string

参数

value
SByte*

指向 8 位带符号整数数组的指针。

startIndex
Int32

value内的起始位置。

length
Int32

要使用的 value 中的字符数。

enc
Encoding

一个对象,指定如何对 value 引用的数组进行编码。 如果 encnull,则假定 ANSI 编码。

属性

例外

value null

startIndexlength 小于零。

-或-

value + startIndex 指定的地址对于当前平台来说太大;即地址计算溢出。

-或-

要初始化的新字符串的长度太大,无法分配。

value + startIndex 指定的地址小于 64K。

-或-

无法使用 value初始化 String 的新实例,假设 value 编码为 enc指定的。

valuestartIndexlength 共同指定无效地址。

注解

注意

有关此构造函数重载和其他 String 构造函数重载的示例和全面的用法信息,请参阅 String 构造函数摘要。

适用于