StringBuilder.Insert StringBuilder.Insert StringBuilder.Insert StringBuilder.Insert Method

Определение

Вставляет строковое представление указанного объекта в данный экземпляр на указанную позицию символа.Inserts the string representation of a specified object into this instance at a specified character position.

Перегрузки

Insert(Int32, String, Int32) Insert(Int32, String, Int32) Insert(Int32, String, Int32) Insert(Int32, String, Int32)

Вставляет одну или более копий указанной строки в данный экземпляр на указанную позицию символа.Inserts one or more copies of a specified string into this instance at the specified character position.

Insert(Int32, UInt64) Insert(Int32, UInt64) Insert(Int32, UInt64) Insert(Int32, UInt64)

Вставляет строковое представление 64-разрядного целого числа без знака в данный экземпляр на указанную позицию символа.Inserts the string representation of a 64-bit unsigned integer into this instance at the specified character position.

Insert(Int32, UInt32) Insert(Int32, UInt32) Insert(Int32, UInt32) Insert(Int32, UInt32)

Вставляет строковое представление 32-разрядного целого числа без знака в данный экземпляр на указанную позицию символа.Inserts the string representation of a 32-bit unsigned integer into this instance at the specified character position.

Insert(Int32, UInt16) Insert(Int32, UInt16) Insert(Int32, UInt16) Insert(Int32, UInt16)

Вставляет строковое представление 16-разрядного целого числа без знака в данный экземпляр на указанную позицию символа.Inserts the string representation of a 16-bit unsigned integer into this instance at the specified character position.

Insert(Int32, String) Insert(Int32, String) Insert(Int32, String) Insert(Int32, String)

Вставляет строку в данный экземпляр на указанную позицию символа.Inserts a string into this instance at the specified character position.

Insert(Int32, Single) Insert(Int32, Single) Insert(Int32, Single) Insert(Int32, Single)

Вставляет строковое представление числа одинарной точности с плавающей запятой с обычной точностью в данный экземпляр на указанную позицию символа.Inserts the string representation of a single-precision floating point number into this instance at the specified character position.

Insert(Int32, Char[], Int32, Int32) Insert(Int32, Char[], Int32, Int32) Insert(Int32, Char[], Int32, Int32) Insert(Int32, Char[], Int32, Int32)

Вставляет строковое представление указанного подмассива символов Юникода в данный экземпляр на указанную позицию символа.Inserts the string representation of a specified subarray of Unicode characters into this instance at the specified character position.

Insert(Int32, SByte) Insert(Int32, SByte) Insert(Int32, SByte) Insert(Int32, SByte)

Вставляет строковое представление указанного 8-разрядного знакового целого числа в данный экземпляр на указанную позицию символа.Inserts the string representation of a specified 8-bit signed integer into this instance at the specified character position.

Insert(Int32, ReadOnlySpan<Char>) Insert(Int32, ReadOnlySpan<Char>) Insert(Int32, ReadOnlySpan<Char>) Insert(Int32, ReadOnlySpan<Char>)
Insert(Int32, Int16) Insert(Int32, Int16) Insert(Int32, Int16) Insert(Int32, Int16)

Вставляет строковое представление указанного 16-разрядного знакового целого числа в данный экземпляр на указанную позицию символа.Inserts the string representation of a specified 16-bit signed integer into this instance at the specified character position.

Insert(Int32, Int64) Insert(Int32, Int64) Insert(Int32, Int64) Insert(Int32, Int64)

Вставляет строковое представление 64-разрядного знакового целого числа в данный экземпляр на указанную позицию символа.Inserts the string representation of a 64-bit signed integer into this instance at the specified character position.

Insert(Int32, Int32) Insert(Int32, Int32) Insert(Int32, Int32) Insert(Int32, Int32)

Вставляет строковое представление указанного 32-разрядного знакового целого числа в данный экземпляр на указанную позицию символа.Inserts the string representation of a specified 32-bit signed integer into this instance at the specified character position.

Insert(Int32, Double) Insert(Int32, Double) Insert(Int32, Double) Insert(Int32, Double)

Вставляет строковое представление числа с плавающей запятой с удвоенной точностью в данный экземпляр на указанную позицию символа.Inserts the string representation of a double-precision floating-point number into this instance at the specified character position.

Insert(Int32, Decimal) Insert(Int32, Decimal) Insert(Int32, Decimal) Insert(Int32, Decimal)

Вставляет строковое представление десятичного числа в данный экземпляр на указанную позицию символа.Inserts the string representation of a decimal number into this instance at the specified character position.

Insert(Int32, Char[]) Insert(Int32, Char[]) Insert(Int32, Char[]) Insert(Int32, Char[])

Вставляет строковое представление указанного массива символов Юникода в данный экземпляр на указанную позицию символа.Inserts the string representation of a specified array of Unicode characters into this instance at the specified character position.

Insert(Int32, Char) Insert(Int32, Char) Insert(Int32, Char) Insert(Int32, Char)

Вставляет строковое представление указанного символа Юникода в данный экземпляр на указанную позицию символа.Inserts the string representation of a specified Unicode character into this instance at the specified character position.

Insert(Int32, Byte) Insert(Int32, Byte) Insert(Int32, Byte) Insert(Int32, Byte)

Вставляет строковое представление указанного 8-разрядного целого числа без знака в данный экземпляр на указанную позицию символа.Inserts the string representation of a specified 8-bit unsigned integer into this instance at the specified character position.

Insert(Int32, Boolean) Insert(Int32, Boolean) Insert(Int32, Boolean) Insert(Int32, Boolean)

Вставляет строковое представление логического значения в данный экземпляр на указанную позицию символа.Inserts the string representation of a Boolean value into this instance at the specified character position.

Insert(Int32, Object) Insert(Int32, Object) Insert(Int32, Object) Insert(Int32, Object)

Вставляет строковое представление объекта в данный экземпляр на указанную позицию символа.Inserts the string representation of an object into this instance at the specified character position.

Insert(Int32, String, Int32) Insert(Int32, String, Int32) Insert(Int32, String, Int32) Insert(Int32, String, Int32)

Вставляет одну или более копий указанной строки в данный экземпляр на указанную позицию символа.Inserts one or more copies of a specified string into this instance at the specified character position.

public:
 System::Text::StringBuilder ^ Insert(int index, System::String ^ value, int count);
public System.Text.StringBuilder Insert (int index, string value, int count);
member this.Insert : int * string * int -> System.Text.StringBuilder
Public Function Insert (index As Integer, value As String, count As Integer) As StringBuilder

Параметры

index
Int32 Int32 Int32 Int32

Позиция в данном экземпляре, с которой начинается вставка.The position in this instance where insertion begins.

value
String String String String

Строка, которую требуется вставить.The string to insert.

count
Int32 Int32 Int32 Int32

Сколько раз следует вставить value.The number of times to insert value.

Возвраты

Ссылка на этот экземпляр после завершения вставки.A reference to this instance after insertion has completed.

Исключения

index имеет значение меньше нуля или больше текущей длины этого экземпляра.index is less than zero or greater than the current length of this instance.

-или--or- Значение параметра count меньше нуля.count is less than zero.

Текущая длина этого объекта StringBuilder плюс длина value count раз превышает MaxCapacity.The current length of this StringBuilder object plus the length of value times count exceeds MaxCapacity.

Примеры

В следующем примере демонстрируется Insert метод.The following example demonstrates the Insert method.

using namespace System;
using namespace System::Text;
ref class Sample
{
private:

   //                           index: 012345
   static String^ initialValue = "--[]--";
   static StringBuilder^ sb;

public:
   static void Main()
   {
      String^ xyz = "xyz";
      array<Char>^abc = {'a','b','c'};
      Char star = '*';
      Object^ obj = 0;
      bool xBool = true;
      Byte xByte = 1;
      short xInt16 = 2;
      int xInt32 = 3;
      long xInt64 = 4;
      Decimal xDecimal = 5;
      float xSingle = 6.6F;
      double xDouble = 7.7;
      
      // The following types are not CLS-compliant.
      UInt16 xUInt16 = 8;
      UInt32 xUInt32 = 9;
      UInt64 xUInt64 = 10;
      SByte xSByte = -11;
      
      //
      Console::WriteLine( "StringBuilder.Insert method" );
      sb = gcnew StringBuilder( initialValue );
      sb->Insert( 3, xyz, 2 );
      Show( 1, sb );
      sb->Insert( 3, xyz );
      Show( 2, sb );
      sb->Insert( 3, star );
      Show( 3, sb );
      sb->Insert( 3, abc );
      Show( 4, sb );
      sb->Insert( 3, abc, 1, 2 );
      Show( 5, sb );
      sb->Insert( 3, xBool ); // True
      Show( 6, sb );
      sb->Insert( 3, obj ); // 0
      Show( 7, sb );
      sb->Insert( 3, xByte ); // 1
      Show( 8, sb );
      sb->Insert( 3, xInt16 ); // 2
      Show( 9, sb );
      sb->Insert( 3, xInt32 ); // 3
      Show( 10, sb );
      sb->Insert( 3, xInt64 ); // 4
      Show( 11, sb );
      sb->Insert( 3, xDecimal ); // 5
      Show( 12, sb );
      sb->Insert( 3, xSingle ); // 6.6
      Show( 13, sb );
      sb->Insert( 3, xDouble ); // 7.7
      Show( 14, sb );
      
      // The following Insert methods are not CLS-compliant.
      sb->Insert( 3, xUInt16 ); // 8
      Show( 15, sb );
      sb->Insert( 3, xUInt32 ); // 9
      Show( 16, sb );
      sb->Insert( 3, xUInt64 ); // 10
      Show( 17, sb );
      sb->Insert( 3, xSByte ); // -11
      Show( 18, sb );
      
      //
   }

   static void Show( int overloadNumber, StringBuilder^ sbs )
   {
      Console::WriteLine( "{0,2:G} = {1}", overloadNumber, sbs );
      sb = gcnew StringBuilder( initialValue );
   }

};

int main()
{
   Sample::Main();
}

/*
This example produces the following results:

StringBuilder.Insert method
 1 = --[xyzxyz]--
 2 = --[xyz]--
 3 = --[*]--
 4 = --[abc]--
 5 = --[bc]--
 6 = --[True]--
 7 = --[0]--
 8 = --[1]--
 9 = --[2]--
10 = --[3]--
11 = --[4]--
12 = --[5]--
13 = --[6.6]--
14 = --[7.7]--
15 = --[8]--
16 = --[9]--
17 = --[10]--
18 = --[-11]--

*/
using System;
using System.Text;

class Sample 
{
//                         index: 012345
    static string initialValue = "--[]--";
    static StringBuilder sb;

    public static void Main() 
    {
    string      xyz       = "xyz";
    char[]      abc       = {'a', 'b', 'c'};
    char        star      = '*';
    Object 	obj       = 0;

    bool        xBool     = true;
    byte        xByte     = 1;
    short       xInt16    = 2;
    int         xInt32    = 3;
    long        xInt64    = 4;
    Decimal     xDecimal  = 5;
    float       xSingle   = 6.6F;
    double      xDouble   = 7.7;

// The following types are not CLS-compliant.
    ushort      xUInt16   = 8;
    uint        xUInt32   = 9;
    ulong       xUInt64   = 10;
    sbyte       xSByte    = -11;
//
    Console.WriteLine("StringBuilder.Insert method");
    sb = new StringBuilder(initialValue);

    sb.Insert(3, xyz, 2);
    Show(1, sb);

    sb.Insert(3, xyz);
    Show(2, sb);

    sb.Insert(3, star);
    Show(3, sb);

    sb.Insert(3, abc);
    Show(4, sb);

    sb.Insert(3, abc, 1, 2);
    Show(5, sb);

    sb.Insert(3, xBool);     // True
    Show(6, sb);

    sb.Insert(3, obj);       // 0
    Show(7, sb);

    sb.Insert(3, xByte);     // 1
    Show(8, sb);

    sb.Insert(3, xInt16);    // 2
    Show(9, sb);

    sb.Insert(3, xInt32);    // 3
    Show(10, sb);

    sb.Insert(3, xInt64);    // 4
    Show(11, sb);

    sb.Insert(3, xDecimal);  // 5
    Show(12, sb);

    sb.Insert(3, xSingle);   // 6.6
    Show(13, sb);

    sb.Insert(3, xDouble);   // 7.7
    Show(14, sb);

// The following Insert methods are not CLS-compliant.
    sb.Insert(3, xUInt16);   // 8
    Show(15, sb);

    sb.Insert(3, xUInt32);   // 9
    Show(16, sb);

    sb.Insert(3, xUInt64);   // 10
    Show(17, sb);

    sb.Insert(3, xSByte);    // -11
    Show(18, sb);
//
    }

    public static void Show(int overloadNumber, StringBuilder sbs)
    {
    Console.WriteLine("{0,2:G} = {1}", overloadNumber, sbs.ToString());
    sb = new StringBuilder(initialValue);
    }
}
/*
This example produces the following results:

StringBuilder.Insert method
 1 = --[xyzxyz]--
 2 = --[xyz]--
 3 = --[*]--
 4 = --[abc]--
 5 = --[bc]--
 6 = --[True]--
 7 = --[0]--
 8 = --[1]--
 9 = --[2]--
10 = --[3]--
11 = --[4]--
12 = --[5]--
13 = --[6.6]--
14 = --[7.7]--
15 = --[8]--
16 = --[9]--
17 = --[10]--
18 = --[-11]--

*/
Imports System
Imports System.Text

Class Sample
   '                                 index: 012345
   Private Shared initialValue As String = "--[]--"
   Private Shared sb As StringBuilder
   
   Public Shared Sub Main()
      Dim xyz As String = "xyz"
      Dim abc As Char() =  {"a"c, "b"c, "c"c}
      Dim star As Char = "*"c
      Dim obj As [Object] = 0
      
      Dim xBool As Boolean = True
      Dim xByte As Byte = 1
      Dim xInt16 As Short = 2
      Dim xInt32 As Integer = 3
      Dim xInt64 As Long = 4
      Dim xDecimal As [Decimal] = 5
      Dim xSingle As Single = 6.6F
      Dim xDouble As Double = 7.7
      
      ' The following types are not CLS-compliant.
      ' Dim xUInt16 As System.UInt16 = 8 
      ' Dim xUInt32 As System.UInt32 = 9
      ' Dim xUInt64 As System.UInt64 = 10 
      ' Dim xSByte As System.SByte = - 11
      '
      Console.WriteLine("StringBuilder.Insert method")
      sb = New StringBuilder(initialValue)
      
      sb.Insert(3, xyz, 2)
      Show(1, sb)
      
      sb.Insert(3, xyz)
      Show(2, sb)
      
      sb.Insert(3, star)
      Show(3, sb)
      
      sb.Insert(3, abc)
      Show(4, sb)
      
      sb.Insert(3, abc, 1, 2)
      Show(5, sb)
      
      sb.Insert(3, xBool)     ' True
      Show(6, sb)
      
      sb.Insert(3, obj)       ' 0
      Show(7, sb)
      
      sb.Insert(3, xByte)     ' 1
      Show(8, sb)
      
      sb.Insert(3, xInt16)    ' 2
      Show(9, sb)
      
      sb.Insert(3, xInt32)    ' 3
      Show(10, sb)
      
      sb.Insert(3, xInt64)    ' 4
      Show(11, sb)
      
      sb.Insert(3, xDecimal)  ' 5
      Show(12, sb)
      
      sb.Insert(3, xSingle)   ' 6.6
      Show(13, sb)
      
      sb.Insert(3, xDouble)   ' 7.7
      Show(14, sb)
      
      ' The following Insert methods are not CLS-compliant.
      ' sb.Insert(3, xUInt16) ' 8
      ' sb.Insert(3, xUInt32) ' 9
      ' sb.Insert(3, xUInt64) ' 10
      ' sb.Insert(3, xSByte)  ' -11

   End Sub 'Main
   
   Public Shared Sub Show(overloadNumber As Integer, sbs As StringBuilder)
      Console.WriteLine("{0,2:G} = {1}", overloadNumber, sbs.ToString())
      sb = New StringBuilder(initialValue)
   End Sub 'Show
End Class 'Sample
'
'This example produces the following results:
'
'StringBuilder.Insert method
' 1 = --[xyzxyz]--
' 2 = --[xyz]--
' 3 = --[*]--
' 4 = --[abc]--
' 5 = --[bc]--
' 6 = --[True]--
' 7 = --[0]--
' 8 = --[1]--
' 9 = --[2]--
'10 = --[3]--
'11 = --[4]--
'12 = --[5]--
'13 = --[6.6]--
'14 = --[7.7]--
'

Комментарии

Существующие символы сдвигаются, чтобы освободить место для нового текста.Existing characters are shifted to make room for the new text. При необходимости корректируется емкость данного экземпляра.The capacity of this instance is adjusted as needed.

Это StringBuilder объекта не изменяется, если valuenull, value не null , но его длина равна нулю, или count равно нулю.This StringBuilder object is not changed if value is null, value is not null but its length is zero, or count is zero.

Дополнительно

Insert(Int32, UInt64) Insert(Int32, UInt64) Insert(Int32, UInt64) Insert(Int32, UInt64)

Важно!

Этот API несовместим с CLS.

Вставляет строковое представление 64-разрядного целого числа без знака в данный экземпляр на указанную позицию символа.Inserts the string representation of a 64-bit unsigned integer into this instance at the specified character position.

public:
 System::Text::StringBuilder ^ Insert(int index, System::UInt64 value);
[System.CLSCompliant(false)]
public System.Text.StringBuilder Insert (int index, ulong value);
member this.Insert : int * uint64 -> System.Text.StringBuilder
Public Function Insert (index As Integer, value As ULong) As StringBuilder

Параметры

index
Int32 Int32 Int32 Int32

Позиция в данном экземпляре, с которой начинается вставка.The position in this instance where insertion begins.

value
UInt64 UInt64 UInt64 UInt64

Значение, которое следует вставить.The value to insert.

Возвраты

Ссылка на этот экземпляр после завершения операции вставки.A reference to this instance after the insert operation has completed.

Исключения

index имеет значение меньше нуля или больше длины этого экземпляра.index is less than zero or greater than the length of this instance.

Увеличение значения этого экземпляра может привести к превышению MaxCapacity.Enlarging the value of this instance would exceed MaxCapacity.

Примеры

В следующем примере демонстрируется Insert метод.The following example demonstrates the Insert method.

using namespace System;
using namespace System::Text;
ref class Sample
{
private:

   //                           index: 012345
   static String^ initialValue = "--[]--";
   static StringBuilder^ sb;

public:
   static void Main()
   {
      String^ xyz = "xyz";
      array<Char>^abc = {'a','b','c'};
      Char star = '*';
      Object^ obj = 0;
      bool xBool = true;
      Byte xByte = 1;
      short xInt16 = 2;
      int xInt32 = 3;
      long xInt64 = 4;
      Decimal xDecimal = 5;
      float xSingle = 6.6F;
      double xDouble = 7.7;
      
      // The following types are not CLS-compliant.
      UInt16 xUInt16 = 8;
      UInt32 xUInt32 = 9;
      UInt64 xUInt64 = 10;
      SByte xSByte = -11;
      
      //
      Console::WriteLine( "StringBuilder.Insert method" );
      sb = gcnew StringBuilder( initialValue );
      sb->Insert( 3, xyz, 2 );
      Show( 1, sb );
      sb->Insert( 3, xyz );
      Show( 2, sb );
      sb->Insert( 3, star );
      Show( 3, sb );
      sb->Insert( 3, abc );
      Show( 4, sb );
      sb->Insert( 3, abc, 1, 2 );
      Show( 5, sb );
      sb->Insert( 3, xBool ); // True
      Show( 6, sb );
      sb->Insert( 3, obj ); // 0
      Show( 7, sb );
      sb->Insert( 3, xByte ); // 1
      Show( 8, sb );
      sb->Insert( 3, xInt16 ); // 2
      Show( 9, sb );
      sb->Insert( 3, xInt32 ); // 3
      Show( 10, sb );
      sb->Insert( 3, xInt64 ); // 4
      Show( 11, sb );
      sb->Insert( 3, xDecimal ); // 5
      Show( 12, sb );
      sb->Insert( 3, xSingle ); // 6.6
      Show( 13, sb );
      sb->Insert( 3, xDouble ); // 7.7
      Show( 14, sb );
      
      // The following Insert methods are not CLS-compliant.
      sb->Insert( 3, xUInt16 ); // 8
      Show( 15, sb );
      sb->Insert( 3, xUInt32 ); // 9
      Show( 16, sb );
      sb->Insert( 3, xUInt64 ); // 10
      Show( 17, sb );
      sb->Insert( 3, xSByte ); // -11
      Show( 18, sb );
      
      //
   }

   static void Show( int overloadNumber, StringBuilder^ sbs )
   {
      Console::WriteLine( "{0,2:G} = {1}", overloadNumber, sbs );
      sb = gcnew StringBuilder( initialValue );
   }

};

int main()
{
   Sample::Main();
}

/*
This example produces the following results:

StringBuilder.Insert method
 1 = --[xyzxyz]--
 2 = --[xyz]--
 3 = --[*]--
 4 = --[abc]--
 5 = --[bc]--
 6 = --[True]--
 7 = --[0]--
 8 = --[1]--
 9 = --[2]--
10 = --[3]--
11 = --[4]--
12 = --[5]--
13 = --[6.6]--
14 = --[7.7]--
15 = --[8]--
16 = --[9]--
17 = --[10]--
18 = --[-11]--

*/
using System;
using System.Text;

class Sample 
{
//                         index: 012345
    static string initialValue = "--[]--";
    static StringBuilder sb;

    public static void Main() 
    {
    string      xyz       = "xyz";
    char[]      abc       = {'a', 'b', 'c'};
    char        star      = '*';
    Object 	obj       = 0;

    bool        xBool     = true;
    byte        xByte     = 1;
    short       xInt16    = 2;
    int         xInt32    = 3;
    long        xInt64    = 4;
    Decimal     xDecimal  = 5;
    float       xSingle   = 6.6F;
    double      xDouble   = 7.7;

// The following types are not CLS-compliant.
    ushort      xUInt16   = 8;
    uint        xUInt32   = 9;
    ulong       xUInt64   = 10;
    sbyte       xSByte    = -11;
//
    Console.WriteLine("StringBuilder.Insert method");
    sb = new StringBuilder(initialValue);

    sb.Insert(3, xyz, 2);
    Show(1, sb);

    sb.Insert(3, xyz);
    Show(2, sb);

    sb.Insert(3, star);
    Show(3, sb);

    sb.Insert(3, abc);
    Show(4, sb);

    sb.Insert(3, abc, 1, 2);
    Show(5, sb);

    sb.Insert(3, xBool);     // True
    Show(6, sb);

    sb.Insert(3, obj);       // 0
    Show(7, sb);

    sb.Insert(3, xByte);     // 1
    Show(8, sb);

    sb.Insert(3, xInt16);    // 2
    Show(9, sb);

    sb.Insert(3, xInt32);    // 3
    Show(10, sb);

    sb.Insert(3, xInt64);    // 4
    Show(11, sb);

    sb.Insert(3, xDecimal);  // 5
    Show(12, sb);

    sb.Insert(3, xSingle);   // 6.6
    Show(13, sb);

    sb.Insert(3, xDouble);   // 7.7
    Show(14, sb);

// The following Insert methods are not CLS-compliant.
    sb.Insert(3, xUInt16);   // 8
    Show(15, sb);

    sb.Insert(3, xUInt32);   // 9
    Show(16, sb);

    sb.Insert(3, xUInt64);   // 10
    Show(17, sb);

    sb.Insert(3, xSByte);    // -11
    Show(18, sb);
//
    }

    public static void Show(int overloadNumber, StringBuilder sbs)
    {
    Console.WriteLine("{0,2:G} = {1}", overloadNumber, sbs.ToString());
    sb = new StringBuilder(initialValue);
    }
}
/*
This example produces the following results:

StringBuilder.Insert method
 1 = --[xyzxyz]--
 2 = --[xyz]--
 3 = --[*]--
 4 = --[abc]--
 5 = --[bc]--
 6 = --[True]--
 7 = --[0]--
 8 = --[1]--
 9 = --[2]--
10 = --[3]--
11 = --[4]--
12 = --[5]--
13 = --[6.6]--
14 = --[7.7]--
15 = --[8]--
16 = --[9]--
17 = --[10]--
18 = --[-11]--

*/
Imports System
Imports System.Text

Class Sample
   '                                 index: 012345
   Private Shared initialValue As String = "--[]--"
   Private Shared sb As StringBuilder
   
   Public Shared Sub Main()
      Dim xyz As String = "xyz"
      Dim abc As Char() =  {"a"c, "b"c, "c"c}
      Dim star As Char = "*"c
      Dim obj As [Object] = 0
      
      Dim xBool As Boolean = True
      Dim xByte As Byte = 1
      Dim xInt16 As Short = 2
      Dim xInt32 As Integer = 3
      Dim xInt64 As Long = 4
      Dim xDecimal As [Decimal] = 5
      Dim xSingle As Single = 6.6F
      Dim xDouble As Double = 7.7
      
      ' The following types are not CLS-compliant.
      ' Dim xUInt16 As System.UInt16 = 8 
      ' Dim xUInt32 As System.UInt32 = 9
      ' Dim xUInt64 As System.UInt64 = 10 
      ' Dim xSByte As System.SByte = - 11
      '
      Console.WriteLine("StringBuilder.Insert method")
      sb = New StringBuilder(initialValue)
      
      sb.Insert(3, xyz, 2)
      Show(1, sb)
      
      sb.Insert(3, xyz)
      Show(2, sb)
      
      sb.Insert(3, star)
      Show(3, sb)
      
      sb.Insert(3, abc)
      Show(4, sb)
      
      sb.Insert(3, abc, 1, 2)
      Show(5, sb)
      
      sb.Insert(3, xBool)     ' True
      Show(6, sb)
      
      sb.Insert(3, obj)       ' 0
      Show(7, sb)
      
      sb.Insert(3, xByte)     ' 1
      Show(8, sb)
      
      sb.Insert(3, xInt16)    ' 2
      Show(9, sb)
      
      sb.Insert(3, xInt32)    ' 3
      Show(10, sb)
      
      sb.Insert(3, xInt64)    ' 4
      Show(11, sb)
      
      sb.Insert(3, xDecimal)  ' 5
      Show(12, sb)
      
      sb.Insert(3, xSingle)   ' 6.6
      Show(13, sb)
      
      sb.Insert(3, xDouble)   ' 7.7
      Show(14, sb)
      
      ' The following Insert methods are not CLS-compliant.
      ' sb.Insert(3, xUInt16) ' 8
      ' sb.Insert(3, xUInt32) ' 9
      ' sb.Insert(3, xUInt64) ' 10
      ' sb.Insert(3, xSByte)  ' -11

   End Sub 'Main
   
   Public Shared Sub Show(overloadNumber As Integer, sbs As StringBuilder)
      Console.WriteLine("{0,2:G} = {1}", overloadNumber, sbs.ToString())
      sb = New StringBuilder(initialValue)
   End Sub 'Show
End Class 'Sample
'
'This example produces the following results:
'
'StringBuilder.Insert method
' 1 = --[xyzxyz]--
' 2 = --[xyz]--
' 3 = --[*]--
' 4 = --[abc]--
' 5 = --[bc]--
' 6 = --[True]--
' 7 = --[0]--
' 8 = --[1]--
' 9 = --[2]--
'10 = --[3]--
'11 = --[4]--
'12 = --[5]--
'13 = --[6.6]--
'14 = --[7.7]--
'

Комментарии

UInt64.ToString используется для получения строкового представления value.UInt64.ToString is used to get a string representation of value. Существующие символы сдвигаются, чтобы освободить место для нового текста.Existing characters are shifted to make room for the new text. При необходимости корректируется емкость данного экземпляра.The capacity of this instance is adjusted as needed.

Примечания для тех, кто вызывает этот метод

В .NET Framework 3.5 с пакетом обновления 1 (SP1).NET Framework 3.5 Service Pack 1 и более ранних версий, вызовы этого метода вызвал ArgumentOutOfRangeException Если вставка value для перевода объекта общая длина превысит MaxCapacity.In the .NET Framework 3.5 с пакетом обновления 1 (SP1).NET Framework 3.5 Service Pack 1 and earlier versions, calls to this method threw an ArgumentOutOfRangeException if inserting value would cause the object's total length to exceed MaxCapacity. Начиная с .NET Framework 4.NET Framework 4, метод вызывает OutOfMemoryException.Starting with the .NET Framework 4.NET Framework 4, the method throws an OutOfMemoryException.

Дополнительно

Insert(Int32, UInt32) Insert(Int32, UInt32) Insert(Int32, UInt32) Insert(Int32, UInt32)

Важно!

Этот API несовместим с CLS.

Вставляет строковое представление 32-разрядного целого числа без знака в данный экземпляр на указанную позицию символа.Inserts the string representation of a 32-bit unsigned integer into this instance at the specified character position.

public:
 System::Text::StringBuilder ^ Insert(int index, System::UInt32 value);
[System.CLSCompliant(false)]
public System.Text.StringBuilder Insert (int index, uint value);
member this.Insert : int * uint32 -> System.Text.StringBuilder
Public Function Insert (index As Integer, value As UInteger) As StringBuilder

Параметры

index
Int32 Int32 Int32 Int32

Позиция в данном экземпляре, с которой начинается вставка.The position in this instance where insertion begins.

value
UInt32 UInt32 UInt32 UInt32

Значение, которое следует вставить.The value to insert.

Возвраты

Ссылка на этот экземпляр после завершения операции вставки.A reference to this instance after the insert operation has completed.

Исключения

index имеет значение меньше нуля или больше длины этого экземпляра.index is less than zero or greater than the length of this instance.

Увеличение значения этого экземпляра может привести к превышению MaxCapacity.Enlarging the value of this instance would exceed MaxCapacity.

Примеры

В следующем примере демонстрируется Insert метод.The following example demonstrates the Insert method.

using namespace System;
using namespace System::Text;
ref class Sample
{
private:

   //                           index: 012345
   static String^ initialValue = "--[]--";
   static StringBuilder^ sb;

public:
   static void Main()
   {
      String^ xyz = "xyz";
      array<Char>^abc = {'a','b','c'};
      Char star = '*';
      Object^ obj = 0;
      bool xBool = true;
      Byte xByte = 1;
      short xInt16 = 2;
      int xInt32 = 3;
      long xInt64 = 4;
      Decimal xDecimal = 5;
      float xSingle = 6.6F;
      double xDouble = 7.7;
      
      // The following types are not CLS-compliant.
      UInt16 xUInt16 = 8;
      UInt32 xUInt32 = 9;
      UInt64 xUInt64 = 10;
      SByte xSByte = -11;
      
      //
      Console::WriteLine( "StringBuilder.Insert method" );
      sb = gcnew StringBuilder( initialValue );
      sb->Insert( 3, xyz, 2 );
      Show( 1, sb );
      sb->Insert( 3, xyz );
      Show( 2, sb );
      sb->Insert( 3, star );
      Show( 3, sb );
      sb->Insert( 3, abc );
      Show( 4, sb );
      sb->Insert( 3, abc, 1, 2 );
      Show( 5, sb );
      sb->Insert( 3, xBool ); // True
      Show( 6, sb );
      sb->Insert( 3, obj ); // 0
      Show( 7, sb );
      sb->Insert( 3, xByte ); // 1
      Show( 8, sb );
      sb->Insert( 3, xInt16 ); // 2
      Show( 9, sb );
      sb->Insert( 3, xInt32 ); // 3
      Show( 10, sb );
      sb->Insert( 3, xInt64 ); // 4
      Show( 11, sb );
      sb->Insert( 3, xDecimal ); // 5
      Show( 12, sb );
      sb->Insert( 3, xSingle ); // 6.6
      Show( 13, sb );
      sb->Insert( 3, xDouble ); // 7.7
      Show( 14, sb );
      
      // The following Insert methods are not CLS-compliant.
      sb->Insert( 3, xUInt16 ); // 8
      Show( 15, sb );
      sb->Insert( 3, xUInt32 ); // 9
      Show( 16, sb );
      sb->Insert( 3, xUInt64 ); // 10
      Show( 17, sb );
      sb->Insert( 3, xSByte ); // -11
      Show( 18, sb );
      
      //
   }

   static void Show( int overloadNumber, StringBuilder^ sbs )
   {
      Console::WriteLine( "{0,2:G} = {1}", overloadNumber, sbs );
      sb = gcnew StringBuilder( initialValue );
   }

};

int main()
{
   Sample::Main();
}

/*
This example produces the following results:

StringBuilder.Insert method
 1 = --[xyzxyz]--
 2 = --[xyz]--
 3 = --[*]--
 4 = --[abc]--
 5 = --[bc]--
 6 = --[True]--
 7 = --[0]--
 8 = --[1]--
 9 = --[2]--
10 = --[3]--
11 = --[4]--
12 = --[5]--
13 = --[6.6]--
14 = --[7.7]--
15 = --[8]--
16 = --[9]--
17 = --[10]--
18 = --[-11]--

*/
using System;
using System.Text;

class Sample 
{
//                         index: 012345
    static string initialValue = "--[]--";
    static StringBuilder sb;

    public static void Main() 
    {
    string      xyz       = "xyz";
    char[]      abc       = {'a', 'b', 'c'};
    char        star      = '*';
    Object 	obj       = 0;

    bool        xBool     = true;
    byte        xByte     = 1;
    short       xInt16    = 2;
    int         xInt32    = 3;
    long        xInt64    = 4;
    Decimal     xDecimal  = 5;
    float       xSingle   = 6.6F;
    double      xDouble   = 7.7;

// The following types are not CLS-compliant.
    ushort      xUInt16   = 8;
    uint        xUInt32   = 9;
    ulong       xUInt64   = 10;
    sbyte       xSByte    = -11;
//
    Console.WriteLine("StringBuilder.Insert method");
    sb = new StringBuilder(initialValue);

    sb.Insert(3, xyz, 2);
    Show(1, sb);

    sb.Insert(3, xyz);
    Show(2, sb);

    sb.Insert(3, star);
    Show(3, sb);

    sb.Insert(3, abc);
    Show(4, sb);

    sb.Insert(3, abc, 1, 2);
    Show(5, sb);

    sb.Insert(3, xBool);     // True
    Show(6, sb);

    sb.Insert(3, obj);       // 0
    Show(7, sb);

    sb.Insert(3, xByte);     // 1
    Show(8, sb);

    sb.Insert(3, xInt16);    // 2
    Show(9, sb);

    sb.Insert(3, xInt32);    // 3
    Show(10, sb);

    sb.Insert(3, xInt64);    // 4
    Show(11, sb);

    sb.Insert(3, xDecimal);  // 5
    Show(12, sb);

    sb.Insert(3, xSingle);   // 6.6
    Show(13, sb);

    sb.Insert(3, xDouble);   // 7.7
    Show(14, sb);

// The following Insert methods are not CLS-compliant.
    sb.Insert(3, xUInt16);   // 8
    Show(15, sb);

    sb.Insert(3, xUInt32);   // 9
    Show(16, sb);

    sb.Insert(3, xUInt64);   // 10
    Show(17, sb);

    sb.Insert(3, xSByte);    // -11
    Show(18, sb);
//
    }

    public static void Show(int overloadNumber, StringBuilder sbs)
    {
    Console.WriteLine("{0,2:G} = {1}", overloadNumber, sbs.ToString());
    sb = new StringBuilder(initialValue);
    }
}
/*
This example produces the following results:

StringBuilder.Insert method
 1 = --[xyzxyz]--
 2 = --[xyz]--
 3 = --[*]--
 4 = --[abc]--
 5 = --[bc]--
 6 = --[True]--
 7 = --[0]--
 8 = --[1]--
 9 = --[2]--
10 = --[3]--
11 = --[4]--
12 = --[5]--
13 = --[6.6]--
14 = --[7.7]--
15 = --[8]--
16 = --[9]--
17 = --[10]--
18 = --[-11]--

*/
Imports System
Imports System.Text

Class Sample
   '                                 index: 012345
   Private Shared initialValue As String = "--[]--"
   Private Shared sb As StringBuilder
   
   Public Shared Sub Main()
      Dim xyz As String = "xyz"
      Dim abc As Char() =  {"a"c, "b"c, "c"c}
      Dim star As Char = "*"c
      Dim obj As [Object] = 0
      
      Dim xBool As Boolean = True
      Dim xByte As Byte = 1
      Dim xInt16 As Short = 2
      Dim xInt32 As Integer = 3
      Dim xInt64 As Long = 4
      Dim xDecimal As [Decimal] = 5
      Dim xSingle As Single = 6.6F
      Dim xDouble As Double = 7.7
      
      ' The following types are not CLS-compliant.
      ' Dim xUInt16 As System.UInt16 = 8 
      ' Dim xUInt32 As System.UInt32 = 9
      ' Dim xUInt64 As System.UInt64 = 10 
      ' Dim xSByte As System.SByte = - 11
      '
      Console.WriteLine("StringBuilder.Insert method")
      sb = New StringBuilder(initialValue)
      
      sb.Insert(3, xyz, 2)
      Show(1, sb)
      
      sb.Insert(3, xyz)
      Show(2, sb)
      
      sb.Insert(3, star)
      Show(3, sb)
      
      sb.Insert(3, abc)
      Show(4, sb)
      
      sb.Insert(3, abc, 1, 2)
      Show(5, sb)
      
      sb.Insert(3, xBool)     ' True
      Show(6, sb)
      
      sb.Insert(3, obj)       ' 0
      Show(7, sb)
      
      sb.Insert(3, xByte)     ' 1
      Show(8, sb)
      
      sb.Insert(3, xInt16)    ' 2
      Show(9, sb)
      
      sb.Insert(3, xInt32)    ' 3
      Show(10, sb)
      
      sb.Insert(3, xInt64)    ' 4
      Show(11, sb)
      
      sb.Insert(3, xDecimal)  ' 5
      Show(12, sb)
      
      sb.Insert(3, xSingle)   ' 6.6
      Show(13, sb)
      
      sb.Insert(3, xDouble)   ' 7.7
      Show(14, sb)
      
      ' The following Insert methods are not CLS-compliant.
      ' sb.Insert(3, xUInt16) ' 8
      ' sb.Insert(3, xUInt32) ' 9
      ' sb.Insert(3, xUInt64) ' 10
      ' sb.Insert(3, xSByte)  ' -11

   End Sub 'Main
   
   Public Shared Sub Show(overloadNumber As Integer, sbs As StringBuilder)
      Console.WriteLine("{0,2:G} = {1}", overloadNumber, sbs.ToString())
      sb = New StringBuilder(initialValue)
   End Sub 'Show
End Class 'Sample
'
'This example produces the following results:
'
'StringBuilder.Insert method
' 1 = --[xyzxyz]--
' 2 = --[xyz]--
' 3 = --[*]--
' 4 = --[abc]--
' 5 = --[bc]--
' 6 = --[True]--
' 7 = --[0]--
' 8 = --[1]--
' 9 = --[2]--
'10 = --[3]--
'11 = --[4]--
'12 = --[5]--
'13 = --[6.6]--
'14 = --[7.7]--
'

Комментарии

UInt32.ToString используется для получения строкового представления value.UInt32.ToString is used to get a string representation of value. Существующие символы сдвигаются, чтобы освободить место для нового текста.Existing characters are shifted to make room for the new text. При необходимости корректируется емкость данного экземпляра.The capacity of this instance is adjusted as needed.

Примечания для тех, кто вызывает этот метод

В .NET Framework 3.5 с пакетом обновления 1 (SP1).NET Framework 3.5 Service Pack 1 и более ранних версий, вызовы этого метода вызвал ArgumentOutOfRangeException Если вставка value для перевода объекта общая длина превысит MaxCapacity.In the .NET Framework 3.5 с пакетом обновления 1 (SP1).NET Framework 3.5 Service Pack 1 and earlier versions, calls to this method threw an ArgumentOutOfRangeException if inserting value would cause the object's total length to exceed MaxCapacity. Начиная с .NET Framework 4.NET Framework 4, метод вызывает OutOfMemoryException.Starting with the .NET Framework 4.NET Framework 4, the method throws an OutOfMemoryException.

Дополнительно

Insert(Int32, UInt16) Insert(Int32, UInt16) Insert(Int32, UInt16) Insert(Int32, UInt16)

Важно!

Этот API несовместим с CLS.

Вставляет строковое представление 16-разрядного целого числа без знака в данный экземпляр на указанную позицию символа.Inserts the string representation of a 16-bit unsigned integer into this instance at the specified character position.

public:
 System::Text::StringBuilder ^ Insert(int index, System::UInt16 value);
[System.CLSCompliant(false)]
public System.Text.StringBuilder Insert (int index, ushort value);
member this.Insert : int * uint16 -> System.Text.StringBuilder
Public Function Insert (index As Integer, value As UShort) As StringBuilder

Параметры

index
Int32 Int32 Int32 Int32

Позиция в данном экземпляре, с которой начинается вставка.The position in this instance where insertion begins.

value
UInt16 UInt16 UInt16 UInt16

Значение, которое следует вставить.The value to insert.

Возвраты

Ссылка на этот экземпляр после завершения операции вставки.A reference to this instance after the insert operation has completed.

Исключения

index имеет значение меньше нуля или больше длины этого экземпляра.index is less than zero or greater than the length of this instance.

Увеличение значения этого экземпляра может привести к превышению MaxCapacity.Enlarging the value of this instance would exceed MaxCapacity.

Примеры

В следующем примере демонстрируется Insert метод.The following example demonstrates the Insert method.

using namespace System;
using namespace System::Text;
ref class Sample
{
private:

   //                           index: 012345
   static String^ initialValue = "--[]--";
   static StringBuilder^ sb;

public:
   static void Main()
   {
      String^ xyz = "xyz";
      array<Char>^abc = {'a','b','c'};
      Char star = '*';
      Object^ obj = 0;
      bool xBool = true;
      Byte xByte = 1;
      short xInt16 = 2;
      int xInt32 = 3;
      long xInt64 = 4;
      Decimal xDecimal = 5;
      float xSingle = 6.6F;
      double xDouble = 7.7;
      
      // The following types are not CLS-compliant.
      UInt16 xUInt16 = 8;
      UInt32 xUInt32 = 9;
      UInt64 xUInt64 = 10;
      SByte xSByte = -11;
      
      //
      Console::WriteLine( "StringBuilder.Insert method" );
      sb = gcnew StringBuilder( initialValue );
      sb->Insert( 3, xyz, 2 );
      Show( 1, sb );
      sb->Insert( 3, xyz );
      Show( 2, sb );
      sb->Insert( 3, star );
      Show( 3, sb );
      sb->Insert( 3, abc );
      Show( 4, sb );
      sb->Insert( 3, abc, 1, 2 );
      Show( 5, sb );
      sb->Insert( 3, xBool ); // True
      Show( 6, sb );
      sb->Insert( 3, obj ); // 0
      Show( 7, sb );
      sb->Insert( 3, xByte ); // 1
      Show( 8, sb );
      sb->Insert( 3, xInt16 ); // 2
      Show( 9, sb );
      sb->Insert( 3, xInt32 ); // 3
      Show( 10, sb );
      sb->Insert( 3, xInt64 ); // 4
      Show( 11, sb );
      sb->Insert( 3, xDecimal ); // 5
      Show( 12, sb );
      sb->Insert( 3, xSingle ); // 6.6
      Show( 13, sb );
      sb->Insert( 3, xDouble ); // 7.7
      Show( 14, sb );
      
      // The following Insert methods are not CLS-compliant.
      sb->Insert( 3, xUInt16 ); // 8
      Show( 15, sb );
      sb->Insert( 3, xUInt32 ); // 9
      Show( 16, sb );
      sb->Insert( 3, xUInt64 ); // 10
      Show( 17, sb );
      sb->Insert( 3, xSByte ); // -11
      Show( 18, sb );
      
      //
   }

   static void Show( int overloadNumber, StringBuilder^ sbs )
   {
      Console::WriteLine( "{0,2:G} = {1}", overloadNumber, sbs );
      sb = gcnew StringBuilder( initialValue );
   }

};

int main()
{
   Sample::Main();
}

/*
This example produces the following results:

StringBuilder.Insert method
 1 = --[xyzxyz]--
 2 = --[xyz]--
 3 = --[*]--
 4 = --[abc]--
 5 = --[bc]--
 6 = --[True]--
 7 = --[0]--
 8 = --[1]--
 9 = --[2]--
10 = --[3]--
11 = --[4]--
12 = --[5]--
13 = --[6.6]--
14 = --[7.7]--
15 = --[8]--
16 = --[9]--
17 = --[10]--
18 = --[-11]--

*/
using System;
using System.Text;

class Sample 
{
//                         index: 012345
    static string initialValue = "--[]--";
    static StringBuilder sb;

    public static void Main() 
    {
    string      xyz       = "xyz";
    char[]      abc       = {'a', 'b', 'c'};
    char        star      = '*';
    Object 	obj       = 0;

    bool        xBool     = true;
    byte        xByte     = 1;
    short       xInt16    = 2;
    int         xInt32    = 3;
    long        xInt64    = 4;
    Decimal     xDecimal  = 5;
    float       xSingle   = 6.6F;
    double      xDouble   = 7.7;

// The following types are not CLS-compliant.
    ushort      xUInt16   = 8;
    uint        xUInt32   = 9;
    ulong       xUInt64   = 10;
    sbyte       xSByte    = -11;
//
    Console.WriteLine("StringBuilder.Insert method");
    sb = new StringBuilder(initialValue);

    sb.Insert(3, xyz, 2);
    Show(1, sb);

    sb.Insert(3, xyz);
    Show(2, sb);

    sb.Insert(3, star);
    Show(3, sb);

    sb.Insert(3, abc);
    Show(4, sb);

    sb.Insert(3, abc, 1, 2);
    Show(5, sb);

    sb.Insert(3, xBool);     // True
    Show(6, sb);

    sb.Insert(3, obj);       // 0
    Show(7, sb);

    sb.Insert(3, xByte);     // 1
    Show(8, sb);

    sb.Insert(3, xInt16);    // 2
    Show(9, sb);

    sb.Insert(3, xInt32);    // 3
    Show(10, sb);

    sb.Insert(3, xInt64);    // 4
    Show(11, sb);

    sb.Insert(3, xDecimal);  // 5
    Show(12, sb);

    sb.Insert(3, xSingle);   // 6.6
    Show(13, sb);

    sb.Insert(3, xDouble);   // 7.7
    Show(14, sb);

// The following Insert methods are not CLS-compliant.
    sb.Insert(3, xUInt16);   // 8
    Show(15, sb);

    sb.Insert(3, xUInt32);   // 9
    Show(16, sb);

    sb.Insert(3, xUInt64);   // 10
    Show(17, sb);

    sb.Insert(3, xSByte);    // -11
    Show(18, sb);
//
    }

    public static void Show(int overloadNumber, StringBuilder sbs)
    {
    Console.WriteLine("{0,2:G} = {1}", overloadNumber, sbs.ToString());
    sb = new StringBuilder(initialValue);
    }
}
/*
This example produces the following results:

StringBuilder.Insert method
 1 = --[xyzxyz]--
 2 = --[xyz]--
 3 = --[*]--
 4 = --[abc]--
 5 = --[bc]--
 6 = --[True]--
 7 = --[0]--
 8 = --[1]--
 9 = --[2]--
10 = --[3]--
11 = --[4]--
12 = --[5]--
13 = --[6.6]--
14 = --[7.7]--
15 = --[8]--
16 = --[9]--
17 = --[10]--
18 = --[-11]--

*/
Imports System
Imports System.Text

Class Sample
   '                                 index: 012345
   Private Shared initialValue As String = "--[]--"
   Private Shared sb As StringBuilder
   
   Public Shared Sub Main()
      Dim xyz As String = "xyz"
      Dim abc As Char() =  {"a"c, "b"c, "c"c}
      Dim star As Char = "*"c
      Dim obj As [Object] = 0
      
      Dim xBool As Boolean = True
      Dim xByte As Byte = 1
      Dim xInt16 As Short = 2
      Dim xInt32 As Integer = 3
      Dim xInt64 As Long = 4
      Dim xDecimal As [Decimal] = 5
      Dim xSingle As Single = 6.6F
      Dim xDouble As Double = 7.7
      
      ' The following types are not CLS-compliant.
      ' Dim xUInt16 As System.UInt16 = 8 
      ' Dim xUInt32 As System.UInt32 = 9
      ' Dim xUInt64 As System.UInt64 = 10 
      ' Dim xSByte As System.SByte = - 11
      '
      Console.WriteLine("StringBuilder.Insert method")
      sb = New StringBuilder(initialValue)
      
      sb.Insert(3, xyz, 2)
      Show(1, sb)
      
      sb.Insert(3, xyz)
      Show(2, sb)
      
      sb.Insert(3, star)
      Show(3, sb)
      
      sb.Insert(3, abc)
      Show(4, sb)
      
      sb.Insert(3, abc, 1, 2)
      Show(5, sb)
      
      sb.Insert(3, xBool)     ' True
      Show(6, sb)
      
      sb.Insert(3, obj)       ' 0
      Show(7, sb)
      
      sb.Insert(3, xByte)     ' 1
      Show(8, sb)
      
      sb.Insert(3, xInt16)    ' 2
      Show(9, sb)
      
      sb.Insert(3, xInt32)    ' 3
      Show(10, sb)
      
      sb.Insert(3, xInt64)    ' 4
      Show(11, sb)
      
      sb.Insert(3, xDecimal)  ' 5
      Show(12, sb)
      
      sb.Insert(3, xSingle)   ' 6.6
      Show(13, sb)
      
      sb.Insert(3, xDouble)   ' 7.7
      Show(14, sb)
      
      ' The following Insert methods are not CLS-compliant.
      ' sb.Insert(3, xUInt16) ' 8
      ' sb.Insert(3, xUInt32) ' 9
      ' sb.Insert(3, xUInt64) ' 10
      ' sb.Insert(3, xSByte)  ' -11

   End Sub 'Main
   
   Public Shared Sub Show(overloadNumber As Integer, sbs As StringBuilder)
      Console.WriteLine("{0,2:G} = {1}", overloadNumber, sbs.ToString())
      sb = New StringBuilder(initialValue)
   End Sub 'Show
End Class 'Sample
'
'This example produces the following results:
'
'StringBuilder.Insert method
' 1 = --[xyzxyz]--
' 2 = --[xyz]--
' 3 = --[*]--
' 4 = --[abc]--
' 5 = --[bc]--
' 6 = --[True]--
' 7 = --[0]--
' 8 = --[1]--
' 9 = --[2]--
'10 = --[3]--
'11 = --[4]--
'12 = --[5]--
'13 = --[6.6]--
'14 = --[7.7]--
'

Комментарии

UInt16.ToString используется для получения строкового представления value.UInt16.ToString is used to get a string representation of value. Существующие символы сдвигаются, чтобы освободить место для нового текста.Existing characters are shifted to make room for the new text. При необходимости корректируется емкость данного экземпляра.The capacity of this instance is adjusted as needed.

Примечания для тех, кто вызывает этот метод

В .NET Framework 3.5 с пакетом обновления 1 (SP1).NET Framework 3.5 Service Pack 1 и более ранних версий, вызовы этого метода вызвал ArgumentOutOfRangeException Если вставка value для перевода объекта общая длина превысит MaxCapacity.In the .NET Framework 3.5 с пакетом обновления 1 (SP1).NET Framework 3.5 Service Pack 1 and earlier versions, calls to this method threw an ArgumentOutOfRangeException if inserting value would cause the object's total length to exceed MaxCapacity. Начиная с .NET Framework 4.NET Framework 4, метод вызывает OutOfMemoryException.Starting with the .NET Framework 4.NET Framework 4, the method throws an OutOfMemoryException.

Дополнительно

Insert(Int32, String) Insert(Int32, String) Insert(Int32, String) Insert(Int32, String)

Вставляет строку в данный экземпляр на указанную позицию символа.Inserts a string into this instance at the specified character position.

public:
 System::Text::StringBuilder ^ Insert(int index, System::String ^ value);
public System.Text.StringBuilder Insert (int index, string value);
member this.Insert : int * string -> System.Text.StringBuilder
Public Function Insert (index As Integer, value As String) As StringBuilder

Параметры

index
Int32 Int32 Int32 Int32

Позиция в данном экземпляре, с которой начинается вставка.The position in this instance where insertion begins.

value
String String String String

Строка, которую требуется вставить.The string to insert.

Возвраты

Ссылка на этот экземпляр после завершения операции вставки.A reference to this instance after the insert operation has completed.

Исключения

index имеет значение меньше нуля или больше текущей длины этого экземпляра.index is less than zero or greater than the current length of this instance.

-или--or- Текущая длина этого объекта StringBuilder плюс длина value превышает MaxCapacity.The current length of this StringBuilder object plus the length of value exceeds MaxCapacity.

Примеры

В следующем примере демонстрируется Insert метод.The following example demonstrates the Insert method.

using namespace System;
using namespace System::Text;
ref class Sample
{
private:

   //                           index: 012345
   static String^ initialValue = "--[]--";
   static StringBuilder^ sb;

public:
   static void Main()
   {
      String^ xyz = "xyz";
      array<Char>^abc = {'a','b','c'};
      Char star = '*';
      Object^ obj = 0;
      bool xBool = true;
      Byte xByte = 1;
      short xInt16 = 2;
      int xInt32 = 3;
      long xInt64 = 4;
      Decimal xDecimal = 5;
      float xSingle = 6.6F;
      double xDouble = 7.7;
      
      // The following types are not CLS-compliant.
      UInt16 xUInt16 = 8;
      UInt32 xUInt32 = 9;
      UInt64 xUInt64 = 10;
      SByte xSByte = -11;
      
      //
      Console::WriteLine( "StringBuilder.Insert method" );
      sb = gcnew StringBuilder( initialValue );
      sb->Insert( 3, xyz, 2 );
      Show( 1, sb );
      sb->Insert( 3, xyz );
      Show( 2, sb );
      sb->Insert( 3, star );
      Show( 3, sb );
      sb->Insert( 3, abc );
      Show( 4, sb );
      sb->Insert( 3, abc, 1, 2 );
      Show( 5, sb );
      sb->Insert( 3, xBool ); // True
      Show( 6, sb );
      sb->Insert( 3, obj ); // 0
      Show( 7, sb );
      sb->Insert( 3, xByte ); // 1
      Show( 8, sb );
      sb->Insert( 3, xInt16 ); // 2
      Show( 9, sb );
      sb->Insert( 3, xInt32 ); // 3
      Show( 10, sb );
      sb->Insert( 3, xInt64 ); // 4
      Show( 11, sb );
      sb->Insert( 3, xDecimal ); // 5
      Show( 12, sb );
      sb->Insert( 3, xSingle ); // 6.6
      Show( 13, sb );
      sb->Insert( 3, xDouble ); // 7.7
      Show( 14, sb );
      
      // The following Insert methods are not CLS-compliant.
      sb->Insert( 3, xUInt16 ); // 8
      Show( 15, sb );
      sb->Insert( 3, xUInt32 ); // 9
      Show( 16, sb );
      sb->Insert( 3, xUInt64 ); // 10
      Show( 17, sb );
      sb->Insert( 3, xSByte ); // -11
      Show( 18, sb );
      
      //
   }

   static void Show( int overloadNumber, StringBuilder^ sbs )
   {
      Console::WriteLine( "{0,2:G} = {1}", overloadNumber, sbs );
      sb = gcnew StringBuilder( initialValue );
   }

};

int main()
{
   Sample::Main();
}

/*
This example produces the following results:

StringBuilder.Insert method
 1 = --[xyzxyz]--
 2 = --[xyz]--
 3 = --[*]--
 4 = --[abc]--
 5 = --[bc]--
 6 = --[True]--
 7 = --[0]--
 8 = --[1]--
 9 = --[2]--
10 = --[3]--
11 = --[4]--
12 = --[5]--
13 = --[6.6]--
14 = --[7.7]--
15 = --[8]--
16 = --[9]--
17 = --[10]--
18 = --[-11]--

*/
using System;
using System.Text;

class Sample 
{
//                         index: 012345
    static string initialValue = "--[]--";
    static StringBuilder sb;

    public static void Main() 
    {
    string      xyz       = "xyz";
    char[]      abc       = {'a', 'b', 'c'};
    char        star      = '*';
    Object 	obj       = 0;

    bool        xBool     = true;
    byte        xByte     = 1;
    short       xInt16    = 2;
    int         xInt32    = 3;
    long        xInt64    = 4;
    Decimal     xDecimal  = 5;
    float       xSingle   = 6.6F;
    double      xDouble   = 7.7;

// The following types are not CLS-compliant.
    ushort      xUInt16   = 8;
    uint        xUInt32   = 9;
    ulong       xUInt64   = 10;
    sbyte       xSByte    = -11;
//
    Console.WriteLine("StringBuilder.Insert method");
    sb = new StringBuilder(initialValue);

    sb.Insert(3, xyz, 2);
    Show(1, sb);

    sb.Insert(3, xyz);
    Show(2, sb);

    sb.Insert(3, star);
    Show(3, sb);

    sb.Insert(3, abc);
    Show(4, sb);

    sb.Insert(3, abc, 1, 2);
    Show(5, sb);

    sb.Insert(3, xBool);     // True
    Show(6, sb);

    sb.Insert(3, obj);       // 0
    Show(7, sb);

    sb.Insert(3, xByte);     // 1
    Show(8, sb);

    sb.Insert(3, xInt16);    // 2
    Show(9, sb);

    sb.Insert(3, xInt32);    // 3
    Show(10, sb);

    sb.Insert(3, xInt64);    // 4
    Show(11, sb);

    sb.Insert(3, xDecimal);  // 5
    Show(12, sb);

    sb.Insert(3, xSingle);   // 6.6
    Show(13, sb);

    sb.Insert(3, xDouble);   // 7.7
    Show(14, sb);

// The following Insert methods are not CLS-compliant.
    sb.Insert(3, xUInt16);   // 8
    Show(15, sb);

    sb.Insert(3, xUInt32);   // 9
    Show(16, sb);

    sb.Insert(3, xUInt64);   // 10
    Show(17, sb);

    sb.Insert(3, xSByte);    // -11
    Show(18, sb);
//
    }

    public static void Show(int overloadNumber, StringBuilder sbs)
    {
    Console.WriteLine("{0,2:G} = {1}", overloadNumber, sbs.ToString());
    sb = new StringBuilder(initialValue);
    }
}
/*
This example produces the following results:

StringBuilder.Insert method
 1 = --[xyzxyz]--
 2 = --[xyz]--
 3 = --[*]--
 4 = --[abc]--
 5 = --[bc]--
 6 = --[True]--
 7 = --[0]--
 8 = --[1]--
 9 = --[2]--
10 = --[3]--
11 = --[4]--
12 = --[5]--
13 = --[6.6]--
14 = --[7.7]--
15 = --[8]--
16 = --[9]--
17 = --[10]--
18 = --[-11]--

*/
Imports System
Imports System.Text

Class Sample
   '                                 index: 012345
   Private Shared initialValue As String = "--[]--"
   Private Shared sb As StringBuilder
   
   Public Shared Sub Main()
      Dim xyz As String = "xyz"
      Dim abc As Char() =  {"a"c, "b"c, "c"c}
      Dim star As Char = "*"c
      Dim obj As [Object] = 0
      
      Dim xBool As Boolean = True
      Dim xByte As Byte = 1
      Dim xInt16 As Short = 2
      Dim xInt32 As Integer = 3
      Dim xInt64 As Long = 4
      Dim xDecimal As [Decimal] = 5
      Dim xSingle As Single = 6.6F
      Dim xDouble As Double = 7.7
      
      ' The following types are not CLS-compliant.
      ' Dim xUInt16 As System.UInt16 = 8 
      ' Dim xUInt32 As System.UInt32 = 9
      ' Dim xUInt64 As System.UInt64 = 10 
      ' Dim xSByte As System.SByte = - 11
      '
      Console.WriteLine("StringBuilder.Insert method")
      sb = New StringBuilder(initialValue)
      
      sb.Insert(3, xyz, 2)
      Show(1, sb)
      
      sb.Insert(3, xyz)
      Show(2, sb)
      
      sb.Insert(3, star)
      Show(3, sb)
      
      sb.Insert(3, abc)
      Show(4, sb)
      
      sb.Insert(3, abc, 1, 2)
      Show(5, sb)
      
      sb.Insert(3, xBool)     ' True
      Show(6, sb)
      
      sb.Insert(3, obj)       ' 0
      Show(7, sb)
      
      sb.Insert(3, xByte)     ' 1
      Show(8, sb)
      
      sb.Insert(3, xInt16)    ' 2
      Show(9, sb)
      
      sb.Insert(3, xInt32)    ' 3
      Show(10, sb)
      
      sb.Insert(3, xInt64)    ' 4
      Show(11, sb)
      
      sb.Insert(3, xDecimal)  ' 5
      Show(12, sb)
      
      sb.Insert(3, xSingle)   ' 6.6
      Show(13, sb)
      
      sb.Insert(3, xDouble)   ' 7.7
      Show(14, sb)
      
      ' The following Insert methods are not CLS-compliant.
      ' sb.Insert(3, xUInt16) ' 8
      ' sb.Insert(3, xUInt32) ' 9
      ' sb.Insert(3, xUInt64) ' 10
      ' sb.Insert(3, xSByte)  ' -11

   End Sub 'Main
   
   Public Shared Sub Show(overloadNumber As Integer, sbs As StringBuilder)
      Console.WriteLine("{0,2:G} = {1}", overloadNumber, sbs.ToString())
      sb = New StringBuilder(initialValue)
   End Sub 'Show
End Class 'Sample
'
'This example produces the following results:
'
'StringBuilder.Insert method
' 1 = --[xyzxyz]--
' 2 = --[xyz]--
' 3 = --[*]--
' 4 = --[abc]--
' 5 = --[bc]--
' 6 = --[True]--
' 7 = --[0]--
' 8 = --[1]--
' 9 = --[2]--
'10 = --[3]--
'11 = --[4]--
'12 = --[5]--
'13 = --[6.6]--
'14 = --[7.7]--
'

Комментарии

Существующие символы сдвигаются, чтобы освободить место для нового текста.Existing characters are shifted to make room for the new text. Емкость настроена, при необходимости.The capacity is adjusted as needed.

Этот экземпляр StringBuilder изменяется не в том случае, если valuenull, или value не null , но его длина равна нулю.This instance of StringBuilder is not changed if value is null, or value is not null but its length is zero.

Дополнительно

Insert(Int32, Single) Insert(Int32, Single) Insert(Int32, Single) Insert(Int32, Single)

Вставляет строковое представление числа одинарной точности с плавающей запятой с обычной точностью в данный экземпляр на указанную позицию символа.Inserts the string representation of a single-precision floating point number into this instance at the specified character position.

public:
 System::Text::StringBuilder ^ Insert(int index, float value);
public System.Text.StringBuilder Insert (int index, float value);
member this.Insert : int * single -> System.Text.StringBuilder
Public Function Insert (index As Integer, value As Single) As StringBuilder

Параметры

index
Int32 Int32 Int32 Int32

Позиция в данном экземпляре, с которой начинается вставка.The position in this instance where insertion begins.

value
Single Single Single Single

Значение, которое следует вставить.The value to insert.

Возвраты

Ссылка на этот экземпляр после завершения операции вставки.A reference to this instance after the insert operation has completed.

Исключения

index имеет значение меньше нуля или больше длины этого экземпляра.index is less than zero or greater than the length of this instance.

Увеличение значения этого экземпляра может привести к превышению MaxCapacity.Enlarging the value of this instance would exceed MaxCapacity.

Примеры

В следующем примере демонстрируется Insert метод.The following example demonstrates the Insert method.

using namespace System;
using namespace System::Text;
ref class Sample
{
private:

   //                           index: 012345
   static String^ initialValue = "--[]--";
   static StringBuilder^ sb;

public:
   static void Main()
   {
      String^ xyz = "xyz";
      array<Char>^abc = {'a','b','c'};
      Char star = '*';
      Object^ obj = 0;
      bool xBool = true;
      Byte xByte = 1;
      short xInt16 = 2;
      int xInt32 = 3;
      long xInt64 = 4;
      Decimal xDecimal = 5;
      float xSingle = 6.6F;
      double xDouble = 7.7;
      
      // The following types are not CLS-compliant.
      UInt16 xUInt16 = 8;
      UInt32 xUInt32 = 9;
      UInt64 xUInt64 = 10;
      SByte xSByte = -11;
      
      //
      Console::WriteLine( "StringBuilder.Insert method" );
      sb = gcnew StringBuilder( initialValue );
      sb->Insert( 3, xyz, 2 );
      Show( 1, sb );
      sb->Insert( 3, xyz );
      Show( 2, sb );
      sb->Insert( 3, star );
      Show( 3, sb );
      sb->Insert( 3, abc );
      Show( 4, sb );
      sb->Insert( 3, abc, 1, 2 );
      Show( 5, sb );
      sb->Insert( 3, xBool ); // True
      Show( 6, sb );
      sb->Insert( 3, obj ); // 0
      Show( 7, sb );
      sb->Insert( 3, xByte ); // 1
      Show( 8, sb );
      sb->Insert( 3, xInt16 ); // 2
      Show( 9, sb );
      sb->Insert( 3, xInt32 ); // 3
      Show( 10, sb );
      sb->Insert( 3, xInt64 ); // 4
      Show( 11, sb );
      sb->Insert( 3, xDecimal ); // 5
      Show( 12, sb );
      sb->Insert( 3, xSingle ); // 6.6
      Show( 13, sb );
      sb->Insert( 3, xDouble ); // 7.7
      Show( 14, sb );
      
      // The following Insert methods are not CLS-compliant.
      sb->Insert( 3, xUInt16 ); // 8
      Show( 15, sb );
      sb->Insert( 3, xUInt32 ); // 9
      Show( 16, sb );
      sb->Insert( 3, xUInt64 ); // 10
      Show( 17, sb );
      sb->Insert( 3, xSByte ); // -11
      Show( 18, sb );
      
      //
   }

   static void Show( int overloadNumber, StringBuilder^ sbs )
   {
      Console::WriteLine( "{0,2:G} = {1}", overloadNumber, sbs );
      sb = gcnew StringBuilder( initialValue );
   }

};

int main()
{
   Sample::Main();
}

/*
This example produces the following results:

StringBuilder.Insert method
 1 = --[xyzxyz]--
 2 = --[xyz]--
 3 = --[*]--
 4 = --[abc]--
 5 = --[bc]--
 6 = --[True]--
 7 = --[0]--
 8 = --[1]--
 9 = --[2]--
10 = --[3]--
11 = --[4]--
12 = --[5]--
13 = --[6.6]--
14 = --[7.7]--
15 = --[8]--
16 = --[9]--
17 = --[10]--
18 = --[-11]--

*/
using System;
using System.Text;

class Sample 
{
//                         index: 012345
    static string initialValue = "--[]--";
    static StringBuilder sb;

    public static void Main() 
    {
    string      xyz       = "xyz";
    char[]      abc       = {'a', 'b', 'c'};
    char        star      = '*';
    Object 	obj       = 0;

    bool        xBool     = true;
    byte        xByte     = 1;
    short       xInt16    = 2;
    int         xInt32    = 3;
    long        xInt64    = 4;
    Decimal     xDecimal  = 5;
    float       xSingle   = 6.6F;
    double      xDouble   = 7.7;

// The following types are not CLS-compliant.
    ushort      xUInt16   = 8;
    uint        xUInt32   = 9;
    ulong       xUInt64   = 10;
    sbyte       xSByte    = -11;
//
    Console.WriteLine("StringBuilder.Insert method");
    sb = new StringBuilder(initialValue);

    sb.Insert(3, xyz, 2);
    Show(1, sb);

    sb.Insert(3, xyz);
    Show(2, sb);

    sb.Insert(3, star);
    Show(3, sb);

    sb.Insert(3, abc);
    Show(4, sb);

    sb.Insert(3, abc, 1, 2);
    Show(5, sb);

    sb.Insert(3, xBool);     // True
    Show(6, sb);

    sb.Insert(3, obj);       // 0
    Show(7, sb);

    sb.Insert(3, xByte);     // 1
    Show(8, sb);

    sb.Insert(3, xInt16);    // 2
    Show(9, sb);

    sb.Insert(3, xInt32);    // 3
    Show(10, sb);

    sb.Insert(3, xInt64);    // 4
    Show(11, sb);

    sb.Insert(3, xDecimal);  // 5
    Show(12, sb);

    sb.Insert(3, xSingle);   // 6.6
    Show(13, sb);

    sb.Insert(3, xDouble);   // 7.7
    Show(14, sb);

// The following Insert methods are not CLS-compliant.
    sb.Insert(3, xUInt16);   // 8
    Show(15, sb);

    sb.Insert(3, xUInt32);   // 9
    Show(16, sb);

    sb.Insert(3, xUInt64);   // 10
    Show(17, sb);

    sb.Insert(3, xSByte);    // -11
    Show(18, sb);
//
    }

    public static void Show(int overloadNumber, StringBuilder sbs)
    {
    Console.WriteLine("{0,2:G} = {1}", overloadNumber, sbs.ToString());
    sb = new StringBuilder(initialValue);
    }
}
/*
This example produces the following results:

StringBuilder.Insert method
 1 = --[xyzxyz]--
 2 = --[xyz]--
 3 = --[*]--
 4 = --[abc]--
 5 = --[bc]--
 6 = --[True]--
 7 = --[0]--
 8 = --[1]--
 9 = --[2]--
10 = --[3]--
11 = --[4]--
12 = --[5]--
13 = --[6.6]--
14 = --[7.7]--
15 = --[8]--
16 = --[9]--
17 = --[10]--
18 = --[-11]--

*/
Imports System
Imports System.Text

Class Sample
   '                                 index: 012345
   Private Shared initialValue As String = "--[]--"
   Private Shared sb As StringBuilder
   
   Public Shared Sub Main()
      Dim xyz As String = "xyz"
      Dim abc As Char() =  {"a"c, "b"c, "c"c}
      Dim star As Char = "*"c
      Dim obj As [Object] = 0
      
      Dim xBool As Boolean = True
      Dim xByte As Byte = 1
      Dim xInt16 As Short = 2
      Dim xInt32 As Integer = 3
      Dim xInt64 As Long = 4
      Dim xDecimal As [Decimal] = 5
      Dim xSingle As Single = 6.6F
      Dim xDouble As Double = 7.7
      
      ' The following types are not CLS-compliant.
      ' Dim xUInt16 As System.UInt16 = 8 
      ' Dim xUInt32 As System.UInt32 = 9
      ' Dim xUInt64 As System.UInt64 = 10 
      ' Dim xSByte As System.SByte = - 11
      '
      Console.WriteLine("StringBuilder.Insert method")
      sb = New StringBuilder(initialValue)
      
      sb.Insert(3, xyz, 2)
      Show(1, sb)
      
      sb.Insert(3, xyz)
      Show(2, sb)
      
      sb.Insert(3, star)
      Show(3, sb)
      
      sb.Insert(3, abc)
      Show(4, sb)
      
      sb.Insert(3, abc, 1, 2)
      Show(5, sb)
      
      sb.Insert(3, xBool)     ' True
      Show(6, sb)
      
      sb.Insert(3, obj)       ' 0
      Show(7, sb)
      
      sb.Insert(3, xByte)     ' 1
      Show(8, sb)
      
      sb.Insert(3, xInt16)    ' 2
      Show(9, sb)
      
      sb.Insert(3, xInt32)    ' 3
      Show(10, sb)
      
      sb.Insert(3, xInt64)    ' 4
      Show(11, sb)
      
      sb.Insert(3, xDecimal)  ' 5
      Show(12, sb)
      
      sb.Insert(3, xSingle)   ' 6.6
      Show(13, sb)
      
      sb.Insert(3, xDouble)   ' 7.7
      Show(14, sb)
      
      ' The following Insert methods are not CLS-compliant.
      ' sb.Insert(3, xUInt16) ' 8
      ' sb.Insert(3, xUInt32) ' 9
      ' sb.Insert(3, xUInt64) ' 10
      ' sb.Insert(3, xSByte)  ' -11

   End Sub 'Main
   
   Public Shared Sub Show(overloadNumber As Integer, sbs As StringBuilder)
      Console.WriteLine("{0,2:G} = {1}", overloadNumber, sbs.ToString())
      sb = New StringBuilder(initialValue)
   End Sub 'Show
End Class 'Sample
'
'This example produces the following results:
'
'StringBuilder.Insert method
' 1 = --[xyzxyz]--
' 2 = --[xyz]--
' 3 = --[*]--
' 4 = --[abc]--
' 5 = --[bc]--
' 6 = --[True]--
' 7 = --[0]--
' 8 = --[1]--
' 9 = --[2]--
'10 = --[3]--
'11 = --[4]--
'12 = --[5]--
'13 = --[6.6]--
'14 = --[7.7]--
'

Комментарии

Single.ToString используется для получения строкового представления value.Single.ToString is used to get a string representation of value. Существующие символы сдвигаются, чтобы освободить место для нового текста.Existing characters are shifted to make room for the new text. При необходимости корректируется емкость данного экземпляра.The capacity of this instance is adjusted as needed.

Примечания для тех, кто вызывает этот метод

В .NET Framework 3.5 с пакетом обновления 1 (SP1).NET Framework 3.5 Service Pack 1 и более ранних версий, вызовы этого метода вызвал ArgumentOutOfRangeException Если вставка value для перевода объекта общая длина превысит MaxCapacity.In the .NET Framework 3.5 с пакетом обновления 1 (SP1).NET Framework 3.5 Service Pack 1 and earlier versions, calls to this method threw an ArgumentOutOfRangeException if inserting value would cause the object's total length to exceed MaxCapacity. Начиная с .NET Framework 4.NET Framework 4, метод вызывает OutOfMemoryException.Starting with the .NET Framework 4.NET Framework 4, the method throws an OutOfMemoryException.

Дополнительно

Insert(Int32, Char[], Int32, Int32) Insert(Int32, Char[], Int32, Int32) Insert(Int32, Char[], Int32, Int32) Insert(Int32, Char[], Int32, Int32)

Вставляет строковое представление указанного подмассива символов Юникода в данный экземпляр на указанную позицию символа.Inserts the string representation of a specified subarray of Unicode characters into this instance at the specified character position.

public:
 System::Text::StringBuilder ^ Insert(int index, cli::array <char> ^ value, int startIndex, int charCount);
public System.Text.StringBuilder Insert (int index, char[] value, int startIndex, int charCount);
member this.Insert : int * char[] * int * int -> System.Text.StringBuilder
Public Function Insert (index As Integer, value As Char(), startIndex As Integer, charCount As Integer) As StringBuilder

Параметры

index
Int32 Int32 Int32 Int32

Позиция в данном экземпляре, с которой начинается вставка.The position in this instance where insertion begins.

value
Char[]

Массив символов.A character array.

startIndex
Int32 Int32 Int32 Int32

Начальный индекс внутри value.The starting index within value.

charCount
Int32 Int32 Int32 Int32

Число символов для вставки.The number of characters to insert.

Возвраты

Ссылка на этот экземпляр после завершения операции вставки.A reference to this instance after the insert operation has completed.

Исключения

value имеет значение null, а startIndex и charCount не равны нулю.value is null, and startIndex and charCount are not zero.

Значение index, startIndex или charCount меньше нуля.index, startIndex, or charCount is less than zero.

-или--or- index больше длины этого экземпляра.index is greater than the length of this instance.

-или--or- startIndex плюс charCount не является позицией в value.startIndex plus charCount is not a position within value.

-или--or- Увеличение значения этого экземпляра может привести к превышению MaxCapacity.Enlarging the value of this instance would exceed MaxCapacity.

Примеры

В следующем примере демонстрируется Insert метод.The following example demonstrates the Insert method.

using namespace System;
using namespace System::Text;
ref class Sample
{
private:

   //                           index: 012345
   static String^ initialValue = "--[]--";
   static StringBuilder^ sb;

public:
   static void Main()
   {
      String^ xyz = "xyz";
      array<Char>^abc = {'a','b','c'};
      Char star = '*';
      Object^ obj = 0;
      bool xBool = true;
      Byte xByte = 1;
      short xInt16 = 2;
      int xInt32 = 3;
      long xInt64 = 4;
      Decimal xDecimal = 5;
      float xSingle = 6.6F;
      double xDouble = 7.7;
      
      // The following types are not CLS-compliant.
      UInt16 xUInt16 = 8;
      UInt32 xUInt32 = 9;
      UInt64 xUInt64 = 10;
      SByte xSByte = -11;
      
      //
      Console::WriteLine( "StringBuilder.Insert method" );
      sb = gcnew StringBuilder( initialValue );
      sb->Insert( 3, xyz, 2 );
      Show( 1, sb );
      sb->Insert( 3, xyz );
      Show( 2, sb );
      sb->Insert( 3, star );
      Show( 3, sb );
      sb->Insert( 3, abc );
      Show( 4, sb );
      sb->Insert( 3, abc, 1, 2 );
      Show( 5, sb );
      sb->Insert( 3, xBool ); // True
      Show( 6, sb );
      sb->Insert( 3, obj ); // 0
      Show( 7, sb );
      sb->Insert( 3, xByte ); // 1
      Show( 8, sb );
      sb->Insert( 3, xInt16 ); // 2
      Show( 9, sb );
      sb->Insert( 3, xInt32 ); // 3
      Show( 10, sb );
      sb->Insert( 3, xInt64 ); // 4
      Show( 11, sb );
      sb->Insert( 3, xDecimal ); // 5
      Show( 12, sb );
      sb->Insert( 3, xSingle ); // 6.6
      Show( 13, sb );
      sb->Insert( 3, xDouble ); // 7.7
      Show( 14, sb );
      
      // The following Insert methods are not CLS-compliant.
      sb->Insert( 3, xUInt16 ); // 8
      Show( 15, sb );
      sb->Insert( 3, xUInt32 ); // 9
      Show( 16, sb );
      sb->Insert( 3, xUInt64 ); // 10
      Show( 17, sb );
      sb->Insert( 3, xSByte ); // -11
      Show( 18, sb );
      
      //
   }

   static void Show( int overloadNumber, StringBuilder^ sbs )
   {
      Console::WriteLine( "{0,2:G} = {1}", overloadNumber, sbs );
      sb = gcnew StringBuilder( initialValue );
   }

};

int main()
{
   Sample::Main();
}

/*
This example produces the following results:

StringBuilder.Insert method
 1 = --[xyzxyz]--
 2 = --[xyz]--
 3 = --[*]--
 4 = --[abc]--
 5 = --[bc]--
 6 = --[True]--
 7 = --[0]--
 8 = --[1]--
 9 = --[2]--
10 = --[3]--
11 = --[4]--
12 = --[5]--
13 = --[6.6]--
14 = --[7.7]--
15 = --[8]--
16 = --[9]--
17 = --[10]--
18 = --[-11]--

*/
using System;
using System.Text;

class Sample 
{
//                         index: 012345
    static string initialValue = "--[]--";
    static StringBuilder sb;

    public static void Main() 
    {
    string      xyz       = "xyz";
    char[]      abc       = {'a', 'b', 'c'};
    char        star      = '*';
    Object 	obj       = 0;

    bool        xBool     = true;
    byte        xByte     = 1;
    short       xInt16    = 2;
    int         xInt32    = 3;
    long        xInt64    = 4;
    Decimal     xDecimal  = 5;
    float       xSingle   = 6.6F;
    double      xDouble   = 7.7;

// The following types are not CLS-compliant.
    ushort      xUInt16   = 8;
    uint        xUInt32   = 9;
    ulong       xUInt64   = 10;
    sbyte       xSByte    = -11;
//
    Console.WriteLine("StringBuilder.Insert method");
    sb = new StringBuilder(initialValue);

    sb.Insert(3, xyz, 2);
    Show(1, sb);

    sb.Insert(3, xyz);
    Show(2, sb);

    sb.Insert(3, star);
    Show(3, sb);

    sb.Insert(3, abc);
    Show(4, sb);

    sb.Insert(3, abc, 1, 2);
    Show(5, sb);

    sb.Insert(3, xBool);     // True
    Show(6, sb);

    sb.Insert(3, obj);       // 0
    Show(7, sb);

    sb.Insert(3, xByte);     // 1
    Show(8, sb);

    sb.Insert(3, xInt16);    // 2
    Show(9, sb);

    sb.Insert(3, xInt32);    // 3
    Show(10, sb);

    sb.Insert(3, xInt64);    // 4
    Show(11, sb);

    sb.Insert(3, xDecimal);  // 5
    Show(12, sb);

    sb.Insert(3, xSingle);   // 6.6
    Show(13, sb);

    sb.Insert(3, xDouble);   // 7.7
    Show(14, sb);

// The following Insert methods are not CLS-compliant.
    sb.Insert(3, xUInt16);   // 8
    Show(15, sb);

    sb.Insert(3, xUInt32);   // 9
    Show(16, sb);

    sb.Insert(3, xUInt64);   // 10
    Show(17, sb);

    sb.Insert(3, xSByte);    // -11
    Show(18, sb);
//
    }

    public static void Show(int overloadNumber, StringBuilder sbs)
    {
    Console.WriteLine("{0,2:G} = {1}", overloadNumber, sbs.ToString());
    sb = new StringBuilder(initialValue);
    }
}
/*
This example produces the following results:

StringBuilder.Insert method
 1 = --[xyzxyz]--
 2 = --[xyz]--
 3 = --[*]--
 4 = --[abc]--
 5 = --[bc]--
 6 = --[True]--
 7 = --[0]--
 8 = --[1]--
 9 = --[2]--
10 = --[3]--
11 = --[4]--
12 = --[5]--
13 = --[6.6]--
14 = --[7.7]--
15 = --[8]--
16 = --[9]--
17 = --[10]--
18 = --[-11]--

*/
Imports System
Imports System.Text

Class Sample
   '                                 index: 012345
   Private Shared initialValue As String = "--[]--"
   Private Shared sb As StringBuilder
   
   Public Shared Sub Main()
      Dim xyz As String = "xyz"
      Dim abc As Char() =  {"a"c, "b"c, "c"c}
      Dim star As Char = "*"c
      Dim obj As [Object] = 0
      
      Dim xBool As Boolean = True
      Dim xByte As Byte = 1
      Dim xInt16 As Short = 2
      Dim xInt32 As Integer = 3
      Dim xInt64 As Long = 4
      Dim xDecimal As [Decimal] = 5
      Dim xSingle As Single = 6.6F
      Dim xDouble As Double = 7.7
      
      ' The following types are not CLS-compliant.
      ' Dim xUInt16 As System.UInt16 = 8 
      ' Dim xUInt32 As System.UInt32 = 9
      ' Dim xUInt64 As System.UInt64 = 10 
      ' Dim xSByte As System.SByte = - 11
      '
      Console.WriteLine("StringBuilder.Insert method")
      sb = New StringBuilder(initialValue)
      
      sb.Insert(3, xyz, 2)
      Show(1, sb)
      
      sb.Insert(3, xyz)
      Show(2, sb)
      
      sb.Insert(3, star)
      Show(3, sb)
      
      sb.Insert(3, abc)
      Show(4, sb)
      
      sb.Insert(3, abc, 1, 2)
      Show(5, sb)
      
      sb.Insert(3, xBool)     ' True
      Show(6, sb)
      
      sb.Insert(3, obj)       ' 0
      Show(7, sb)
      
      sb.Insert(3, xByte)     ' 1
      Show(8, sb)
      
      sb.Insert(3, xInt16)    ' 2
      Show(9, sb)
      
      sb.Insert(3, xInt32)    ' 3
      Show(10, sb)
      
      sb.Insert(3, xInt64)    ' 4
      Show(11, sb)
      
      sb.Insert(3, xDecimal)  ' 5
      Show(12, sb)
      
      sb.Insert(3, xSingle)   ' 6.6
      Show(13, sb)
      
      sb.Insert(3, xDouble)   ' 7.7
      Show(14, sb)
      
      ' The following Insert methods are not CLS-compliant.
      ' sb.Insert(3, xUInt16) ' 8
      ' sb.Insert(3, xUInt32) ' 9
      ' sb.Insert(3, xUInt64) ' 10
      ' sb.Insert(3, xSByte)  ' -11

   End Sub 'Main
   
   Public Shared Sub Show(overloadNumber As Integer, sbs As StringBuilder)
      Console.WriteLine("{0,2:G} = {1}", overloadNumber, sbs.ToString())
      sb = New StringBuilder(initialValue)
   End Sub 'Show
End Class 'Sample
'
'This example produces the following results:
'
'StringBuilder.Insert method
' 1 = --[xyzxyz]--
' 2 = --[xyz]--
' 3 = --[*]--
' 4 = --[abc]--
' 5 = --[bc]--
' 6 = --[True]--
' 7 = --[0]--
' 8 = --[1]--
' 9 = --[2]--
'10 = --[3]--
'11 = --[4]--
'12 = --[5]--
'13 = --[6.6]--
'14 = --[7.7]--
'

Комментарии

Существующие символы сдвигаются, чтобы освободить место для нового текста.Existing characters are shifted to make room for the new text. При необходимости корректируется емкость данного экземпляра.The capacity of this instance is adjusted as needed.

Insert(Int32, SByte) Insert(Int32, SByte) Insert(Int32, SByte) Insert(Int32, SByte)

Важно!

Этот API несовместим с CLS.

Вставляет строковое представление указанного 8-разрядного знакового целого числа в данный экземпляр на указанную позицию символа.Inserts the string representation of a specified 8-bit signed integer into this instance at the specified character position.

public:
 System::Text::StringBuilder ^ Insert(int index, System::SByte value);
[System.CLSCompliant(false)]
public System.Text.StringBuilder Insert (int index, sbyte value);
member this.Insert : int * sbyte -> System.Text.StringBuilder
Public Function Insert (index As Integer, value As SByte) As StringBuilder

Параметры

index
Int32 Int32 Int32 Int32

Позиция в данном экземпляре, с которой начинается вставка.The position in this instance where insertion begins.

value
SByte SByte SByte SByte

Значение, которое следует вставить.The value to insert.

Возвраты

Ссылка на этот экземпляр после завершения операции вставки.A reference to this instance after the insert operation has completed.

Исключения

index имеет значение меньше нуля или больше длины этого экземпляра.index is less than zero or greater than the length of this instance.

Увеличение значения этого экземпляра может привести к превышению MaxCapacity.Enlarging the value of this instance would exceed MaxCapacity.

Примеры

В следующем примере демонстрируется Insert метод.The following example demonstrates the Insert method.

using namespace System;
using namespace System::Text;
ref class Sample
{
private:

   //                           index: 012345
   static String^ initialValue = "--[]--";
   static StringBuilder^ sb;

public:
   static void Main()
   {
      String^ xyz = "xyz";
      array<Char>^abc = {'a','b','c'};
      Char star = '*';
      Object^ obj = 0;
      bool xBool = true;
      Byte xByte = 1;
      short xInt16 = 2;
      int xInt32 = 3;
      long xInt64 = 4;
      Decimal xDecimal = 5;
      float xSingle = 6.6F;
      double xDouble = 7.7;
      
      // The following types are not CLS-compliant.
      UInt16 xUInt16 = 8;
      UInt32 xUInt32 = 9;
      UInt64 xUInt64 = 10;
      SByte xSByte = -11;
      
      //
      Console::WriteLine( "StringBuilder.Insert method" );
      sb = gcnew StringBuilder( initialValue );
      sb->Insert( 3, xyz, 2 );
      Show( 1, sb );
      sb->Insert( 3, xyz );
      Show( 2, sb );
      sb->Insert( 3, star );
      Show( 3, sb );
      sb->Insert( 3, abc );
      Show( 4, sb );
      sb->Insert( 3, abc, 1, 2 );
      Show( 5, sb );
      sb->Insert( 3, xBool ); // True
      Show( 6, sb );
      sb->Insert( 3, obj ); // 0
      Show( 7, sb );
      sb->Insert( 3, xByte ); // 1
      Show( 8, sb );
      sb->Insert( 3, xInt16 ); // 2
      Show( 9, sb );
      sb->Insert( 3, xInt32 ); // 3
      Show( 10, sb );
      sb->Insert( 3, xInt64 ); // 4
      Show( 11, sb );
      sb->Insert( 3, xDecimal ); // 5
      Show( 12, sb );
      sb->Insert( 3, xSingle ); // 6.6
      Show( 13, sb );
      sb->Insert( 3, xDouble ); // 7.7
      Show( 14, sb );
      
      // The following Insert methods are not CLS-compliant.
      sb->Insert( 3, xUInt16 ); // 8
      Show( 15, sb );
      sb->Insert( 3, xUInt32 ); // 9
      Show( 16, sb );
      sb->Insert( 3, xUInt64 ); // 10
      Show( 17, sb );
      sb->Insert( 3, xSByte ); // -11
      Show( 18, sb );
      
      //
   }

   static void Show( int overloadNumber, StringBuilder^ sbs )
   {
      Console::WriteLine( "{0,2:G} = {1}", overloadNumber, sbs );
      sb = gcnew StringBuilder( initialValue );
   }

};

int main()
{
   Sample::Main();
}

/*
This example produces the following results:

StringBuilder.Insert method
 1 = --[xyzxyz]--
 2 = --[xyz]--
 3 = --[*]--
 4 = --[abc]--
 5 = --[bc]--
 6 = --[True]--
 7 = --[0]--
 8 = --[1]--
 9 = --[2]--
10 = --[3]--
11 = --[4]--
12 = --[5]--
13 = --[6.6]--
14 = --[7.7]--
15 = --[8]--
16 = --[9]--
17 = --[10]--
18 = --[-11]--

*/
using System;
using System.Text;

class Sample 
{
//                         index: 012345
    static string initialValue = "--[]--";
    static StringBuilder sb;

    public static void Main() 
    {
    string      xyz       = "xyz";
    char[]      abc       = {'a', 'b', 'c'};
    char        star      = '*';
    Object 	obj       = 0;

    bool        xBool     = true;
    byte        xByte     = 1;
    short       xInt16    = 2;
    int         xInt32    = 3;
    long        xInt64    = 4;
    Decimal     xDecimal  = 5;
    float       xSingle   = 6.6F;
    double      xDouble   = 7.7;

// The following types are not CLS-compliant.
    ushort      xUInt16   = 8;
    uint        xUInt32   = 9;
    ulong       xUInt64   = 10;
    sbyte       xSByte    = -11;
//
    Console.WriteLine("StringBuilder.Insert method");
    sb = new StringBuilder(initialValue);

    sb.Insert(3, xyz, 2);
    Show(1, sb);

    sb.Insert(3, xyz);
    Show(2, sb);

    sb.Insert(3, star);
    Show(3, sb);

    sb.Insert(3, abc);
    Show(4, sb);

    sb.Insert(3, abc, 1, 2);
    Show(5, sb);

    sb.Insert(3, xBool);     // True
    Show(6, sb);

    sb.Insert(3, obj);       // 0
    Show(7, sb);

    sb.Insert(3, xByte);     // 1
    Show(8, sb);

    sb.Insert(3, xInt16);    // 2
    Show(9, sb);

    sb.Insert(3, xInt32);    // 3
    Show(10, sb);

    sb.Insert(3, xInt64);    // 4
    Show(11, sb);

    sb.Insert(3, xDecimal);  // 5
    Show(12, sb);

    sb.Insert(3, xSingle);   // 6.6
    Show(13, sb);

    sb.Insert(3, xDouble);   // 7.7
    Show(14, sb);

// The following Insert methods are not CLS-compliant.
    sb.Insert(3, xUInt16);   // 8
    Show(15, sb);

    sb.Insert(3, xUInt32);   // 9
    Show(16, sb);

    sb.Insert(3, xUInt64);   // 10
    Show(17, sb);

    sb.Insert(3, xSByte);    // -11
    Show(18, sb);
//
    }

    public static void Show(int overloadNumber, StringBuilder sbs)
    {
    Console.WriteLine("{0,2:G} = {1}", overloadNumber, sbs.ToString());
    sb = new StringBuilder(initialValue);
    }
}
/*
This example produces the following results:

StringBuilder.Insert method
 1 = --[xyzxyz]--
 2 = --[xyz]--
 3 = --[*]--
 4 = --[abc]--
 5 = --[bc]--
 6 = --[True]--
 7 = --[0]--
 8 = --[1]--
 9 = --[2]--
10 = --[3]--
11 = --[4]--
12 = --[5]--
13 = --[6.6]--
14 = --[7.7]--
15 = --[8]--
16 = --[9]--
17 = --[10]--
18 = --[-11]--

*/
Imports System
Imports System.Text

Class Sample
   '                                 index: 012345
   Private Shared initialValue As String = "--[]--"
   Private Shared sb As StringBuilder
   
   Public Shared Sub Main()
      Dim xyz As String = "xyz"
      Dim abc As Char() =  {"a"c, "b"c, "c"c}
      Dim star As Char = "*"c
      Dim obj As [Object] = 0
      
      Dim xBool As Boolean = True
      Dim xByte As Byte = 1
      Dim xInt16 As Short = 2
      Dim xInt32 As Integer = 3
      Dim xInt64 As Long = 4
      Dim xDecimal As [Decimal] = 5
      Dim xSingle As Single = 6.6F
      Dim xDouble As Double = 7.7
      
      ' The following types are not CLS-compliant.
      ' Dim xUInt16 As System.UInt16 = 8 
      ' Dim xUInt32 As System.UInt32 = 9
      ' Dim xUInt64 As System.UInt64 = 10 
      ' Dim xSByte As System.SByte = - 11
      '
      Console.WriteLine("StringBuilder.Insert method")
      sb = New StringBuilder(initialValue)
      
      sb.Insert(3, xyz, 2)
      Show(1, sb)
      
      sb.Insert(3, xyz)
      Show(2, sb)
      
      sb.Insert(3, star)
      Show(3, sb)
      
      sb.Insert(3, abc)
      Show(4, sb)
      
      sb.Insert(3, abc, 1, 2)
      Show(5, sb)
      
      sb.Insert(3, xBool)     ' True
      Show(6, sb)
      
      sb.Insert(3, obj)       ' 0
      Show(7, sb)
      
      sb.Insert(3, xByte)     ' 1
      Show(8, sb)
      
      sb.Insert(3, xInt16)    ' 2
      Show(9, sb)
      
      sb.Insert(3, xInt32)    ' 3
      Show(10, sb)
      
      sb.Insert(3, xInt64)    ' 4
      Show(11, sb)
      
      sb.Insert(3, xDecimal)  ' 5
      Show(12, sb)
      
      sb.Insert(3, xSingle)   ' 6.6
      Show(13, sb)
      
      sb.Insert(3, xDouble)   ' 7.7
      Show(14, sb)
      
      ' The following Insert methods are not CLS-compliant.
      ' sb.Insert(3, xUInt16) ' 8
      ' sb.Insert(3, xUInt32) ' 9
      ' sb.Insert(3, xUInt64) ' 10
      ' sb.Insert(3, xSByte)  ' -11

   End Sub 'Main
   
   Public Shared Sub Show(overloadNumber As Integer, sbs As StringBuilder)
      Console.WriteLine("{0,2:G} = {1}", overloadNumber, sbs.ToString())
      sb = New StringBuilder(initialValue)
   End Sub 'Show
End Class 'Sample
'
'This example produces the following results:
'
'StringBuilder.Insert method
' 1 = --[xyzxyz]--
' 2 = --[xyz]--
' 3 = --[*]--
' 4 = --[abc]--
' 5 = --[bc]--
' 6 = --[True]--
' 7 = --[0]--
' 8 = --[1]--
' 9 = --[2]--
'10 = --[3]--
'11 = --[4]--
'12 = --[5]--
'13 = --[6.6]--
'14 = --[7.7]--
'

Комментарии

SByte.ToString используется для получения строкового представления value.SByte.ToString is used to get a string representation of value. Существующие символы сдвигаются, чтобы освободить место для нового текста.Existing characters are shifted to make room for the new text. Емкость настроена, при необходимости.The capacity is adjusted as needed.

Примечания для тех, кто вызывает этот метод

В .NET Framework 3.5 с пакетом обновления 1 (SP1).NET Framework 3.5 Service Pack 1 и более ранних версий, вызовы этого метода вызвал ArgumentOutOfRangeException Если вставка value для перевода объекта общая длина превысит MaxCapacity.In the .NET Framework 3.5 с пакетом обновления 1 (SP1).NET Framework 3.5 Service Pack 1 and earlier versions, calls to this method threw an ArgumentOutOfRangeException if inserting value would cause the object's total length to exceed MaxCapacity. Начиная с .NET Framework 4.NET Framework 4, метод вызывает OutOfMemoryException.Starting with the .NET Framework 4.NET Framework 4, the method throws an OutOfMemoryException.

Дополнительно

Insert(Int32, ReadOnlySpan<Char>) Insert(Int32, ReadOnlySpan<Char>) Insert(Int32, ReadOnlySpan<Char>) Insert(Int32, ReadOnlySpan<Char>)

public:
 System::Text::StringBuilder ^ Insert(int index, ReadOnlySpan<char> value);
public System.Text.StringBuilder Insert (int index, ReadOnlySpan<char> value);
member this.Insert : int * ReadOnlySpan<char> -> System.Text.StringBuilder
Public Function Insert (index As Integer, value As ReadOnlySpan(Of Char)) As StringBuilder

Параметры

Возвраты

Insert(Int32, Int16) Insert(Int32, Int16) Insert(Int32, Int16) Insert(Int32, Int16)

Вставляет строковое представление указанного 16-разрядного знакового целого числа в данный экземпляр на указанную позицию символа.Inserts the string representation of a specified 16-bit signed integer into this instance at the specified character position.

public:
 System::Text::StringBuilder ^ Insert(int index, short value);
public System.Text.StringBuilder Insert (int index, short value);
member this.Insert : int * int16 -> System.Text.StringBuilder
Public Function Insert (index As Integer, value As Short) As StringBuilder

Параметры

index
Int32 Int32 Int32 Int32

Позиция в данном экземпляре, с которой начинается вставка.The position in this instance where insertion begins.

value
Int16 Int16 Int16 Int16

Значение, которое следует вставить.The value to insert.

Возвраты

Ссылка на этот экземпляр после завершения операции вставки.A reference to this instance after the insert operation has completed.

Исключения

index имеет значение меньше нуля или больше длины этого экземпляра.index is less than zero or greater than the length of this instance.

Увеличение значения этого экземпляра может привести к превышению MaxCapacity.Enlarging the value of this instance would exceed MaxCapacity.

Примеры

В следующем примере демонстрируется Insert метод.The following example demonstrates the Insert method.

using namespace System;
using namespace System::Text;
ref class Sample
{
private:

   //                           index: 012345
   static String^ initialValue = "--[]--";
   static StringBuilder^ sb;

public:
   static void Main()
   {
      String^ xyz = "xyz";
      array<Char>^abc = {'a','b','c'};
      Char star = '*';
      Object^ obj = 0;
      bool xBool = true;
      Byte xByte = 1;
      short xInt16 = 2;
      int xInt32 = 3;
      long xInt64 = 4;
      Decimal xDecimal = 5;
      float xSingle = 6.6F;
      double xDouble = 7.7;
      
      // The following types are not CLS-compliant.
      UInt16 xUInt16 = 8;
      UInt32 xUInt32 = 9;
      UInt64 xUInt64 = 10;
      SByte xSByte = -11;
      
      //
      Console::WriteLine( "StringBuilder.Insert method" );
      sb = gcnew StringBuilder( initialValue );
      sb->Insert( 3, xyz, 2 );
      Show( 1, sb );
      sb->Insert( 3, xyz );
      Show( 2, sb );
      sb->Insert( 3, star );
      Show( 3, sb );
      sb->Insert( 3, abc );
      Show( 4, sb );
      sb->Insert( 3, abc, 1, 2 );
      Show( 5, sb );
      sb->Insert( 3, xBool ); // True
      Show( 6, sb );
      sb->Insert( 3, obj ); // 0
      Show( 7, sb );
      sb->Insert( 3, xByte ); // 1
      Show( 8, sb );
      sb->Insert( 3, xInt16 ); // 2
      Show( 9, sb );
      sb->Insert( 3, xInt32 ); // 3
      Show( 10, sb );
      sb->Insert( 3, xInt64 ); // 4
      Show( 11, sb );
      sb->Insert( 3, xDecimal ); // 5
      Show( 12, sb );
      sb->Insert( 3, xSingle ); // 6.6
      Show( 13, sb );
      sb->Insert( 3, xDouble ); // 7.7
      Show( 14, sb );
      
      // The following Insert methods are not CLS-compliant.
      sb->Insert( 3, xUInt16 ); // 8
      Show( 15, sb );
      sb->Insert( 3, xUInt32 ); // 9
      Show( 16, sb );
      sb->Insert( 3, xUInt64 ); // 10
      Show( 17, sb );
      sb->Insert( 3, xSByte ); // -11
      Show( 18, sb );
      
      //
   }

   static void Show( int overloadNumber, StringBuilder^ sbs )
   {
      Console::WriteLine( "{0,2:G} = {1}", overloadNumber, sbs );
      sb = gcnew StringBuilder( initialValue );
   }

};

int main()
{
   Sample::Main();
}

/*
This example produces the following results:

StringBuilder.Insert method
 1 = --[xyzxyz]--
 2 = --[xyz]--
 3 = --[*]--
 4 = --[abc]--
 5 = --[bc]--
 6 = --[True]--
 7 = --[0]--
 8 = --[1]--
 9 = --[2]--
10 = --[3]--
11 = --[4]--
12 = --[5]--
13 = --[6.6]--
14 = --[7.7]--
15 = --[8]--
16 = --[9]--
17 = --[10]--
18 = --[-11]--

*/
using System;
using System.Text;

class Sample 
{
//                         index: 012345
    static string initialValue = "--[]--";
    static StringBuilder sb;

    public static void Main() 
    {
    string      xyz       = "xyz";
    char[]      abc       = {'a', 'b', 'c'};
    char        star      = '*';
    Object 	obj       = 0;

    bool        xBool     = true;
    byte        xByte     = 1;
    short       xInt16    = 2;
    int         xInt32    = 3;
    long        xInt64    = 4;
    Decimal     xDecimal  = 5;
    float       xSingle   = 6.6F;
    double      xDouble   = 7.7;

// The following types are not CLS-compliant.
    ushort      xUInt16   = 8;
    uint        xUInt32   = 9;
    ulong       xUInt64   = 10;
    sbyte       xSByte    = -11;
//
    Console.WriteLine("StringBuilder.Insert method");
    sb = new StringBuilder(initialValue);

    sb.Insert(3, xyz, 2);
    Show(1, sb);

    sb.Insert(3, xyz);
    Show(2, sb);

    sb.Insert(3, star);
    Show(3, sb);

    sb.Insert(3, abc);
    Show(4, sb);

    sb.Insert(3, abc, 1, 2);
    Show(5, sb);

    sb.Insert(3, xBool);     // True
    Show(6, sb);

    sb.Insert(3, obj);       // 0
    Show(7, sb);

    sb.Insert(3, xByte);     // 1
    Show(8, sb);

    sb.Insert(3, xInt16);    // 2
    Show(9, sb);

    sb.Insert(3, xInt32);    // 3
    Show(10, sb);

    sb.Insert(3, xInt64);    // 4
    Show(11, sb);

    sb.Insert(3, xDecimal);  // 5
    Show(12, sb);

    sb.Insert(3, xSingle);   // 6.6
    Show(13, sb);

    sb.Insert(3, xDouble);   // 7.7
    Show(14, sb);

// The following Insert methods are not CLS-compliant.
    sb.Insert(3, xUInt16);   // 8
    Show(15, sb);

    sb.Insert(3, xUInt32);   // 9
    Show(16, sb);

    sb.Insert(3, xUInt64);   // 10
    Show(17, sb);

    sb.Insert(3, xSByte);    // -11
    Show(18, sb);
//
    }

    public static void Show(int overloadNumber, StringBuilder sbs)
    {
    Console.WriteLine("{0,2:G} = {1}", overloadNumber, sbs.ToString());
    sb = new StringBuilder(initialValue);
    }
}
/*
This example produces the following results:

StringBuilder.Insert method
 1 = --[xyzxyz]--
 2 = --[xyz]--
 3 = --[*]--
 4 = --[abc]--
 5 = --[bc]--
 6 = --[True]--
 7 = --[0]--
 8 = --[1]--
 9 = --[2]--
10 = --[3]--
11 = --[4]--
12 = --[5]--
13 = --[6.6]--
14 = --[7.7]--
15 = --[8]--
16 = --[9]--
17 = --[10]--
18 = --[-11]--

*/
Imports System
Imports System.Text

Class Sample
   '                                 index: 012345
   Private Shared initialValue As String = "--[]--"
   Private Shared sb As StringBuilder
   
   Public Shared Sub Main()
      Dim xyz As String = "xyz"
      Dim abc As Char() =  {"a"c, "b"c, "c"c}
      Dim star As Char = "*"c
      Dim obj As [Object] = 0
      
      Dim xBool As Boolean = True
      Dim xByte As Byte = 1
      Dim xInt16 As Short = 2
      Dim xInt32 As Integer = 3
      Dim xInt64 As Long = 4
      Dim xDecimal As [Decimal] = 5
      Dim xSingle As Single = 6.6F
      Dim xDouble As Double = 7.7
      
      ' The following types are not CLS-compliant.
      ' Dim xUInt16 As System.UInt16 = 8 
      ' Dim xUInt32 As System.UInt32 = 9
      ' Dim xUInt64 As System.UInt64 = 10 
      ' Dim xSByte As System.SByte = - 11
      '
      Console.WriteLine("StringBuilder.Insert method")
      sb = New StringBuilder(initialValue)
      
      sb.Insert(3, xyz, 2)
      Show(1, sb)
      
      sb.Insert(3, xyz)
      Show(2, sb)
      
      sb.Insert(3, star)
      Show(3, sb)
      
      sb.Insert(3, abc)
      Show(4, sb)
      
      sb.Insert(3, abc, 1, 2)
      Show(5, sb)
      
      sb.Insert(3, xBool)     ' True
      Show(6, sb)
      
      sb.Insert(3, obj)       ' 0
      Show(7, sb)
      
      sb.Insert(3, xByte)     ' 1
      Show(8, sb)
      
      sb.Insert(3, xInt16)    ' 2
      Show(9, sb)
      
      sb.Insert(3, xInt32)    ' 3
      Show(10, sb)
      
      sb.Insert(3, xInt64)    ' 4
      Show(11, sb)
      
      sb.Insert(3, xDecimal)  ' 5
      Show(12, sb)
      
      sb.Insert(3, xSingle)   ' 6.6
      Show(13, sb)
      
      sb.Insert(3, xDouble)   ' 7.7
      Show(14, sb)
      
      ' The following Insert methods are not CLS-compliant.
      ' sb.Insert(3, xUInt16) ' 8
      ' sb.Insert(3, xUInt32) ' 9
      ' sb.Insert(3, xUInt64) ' 10
      ' sb.Insert(3, xSByte)  ' -11

   End Sub 'Main
   
   Public Shared Sub Show(overloadNumber As Integer, sbs As StringBuilder)
      Console.WriteLine("{0,2:G} = {1}", overloadNumber, sbs.ToString())
      sb = New StringBuilder(initialValue)
   End Sub 'Show
End Class 'Sample
'
'This example produces the following results:
'
'StringBuilder.Insert method
' 1 = --[xyzxyz]--
' 2 = --[xyz]--
' 3 = --[*]--
' 4 = --[abc]--
' 5 = --[bc]--
' 6 = --[True]--
' 7 = --[0]--
' 8 = --[1]--
' 9 = --[2]--
'10 = --[3]--
'11 = --[4]--
'12 = --[5]--
'13 = --[6.6]--
'14 = --[7.7]--
'

Комментарии

Int16.ToString используется для получения строкового представления value.Int16.ToString is used to get a string representation of value. Существующие символы сдвигаются, чтобы освободить место для нового текста.Existing characters are shifted to make room for the new text. При необходимости корректируется емкость данного экземпляра.The capacity of this instance is adjusted as needed.

Примечания для тех, кто вызывает этот метод

В .NET Framework 3.5 с пакетом обновления 1 (SP1).NET Framework 3.5 Service Pack 1 и более ранних версий, вызовы этого метода вызвал ArgumentOutOfRangeException Если вставка value для перевода объекта общая длина превысит MaxCapacity.In the .NET Framework 3.5 с пакетом обновления 1 (SP1).NET Framework 3.5 Service Pack 1 and earlier versions, calls to this method threw an ArgumentOutOfRangeException if inserting value would cause the object's total length to exceed MaxCapacity. Начиная с .NET Framework 4.NET Framework 4, метод вызывает OutOfMemoryException.Starting with the .NET Framework 4.NET Framework 4, the method throws an OutOfMemoryException.

Дополнительно

Insert(Int32, Int64) Insert(Int32, Int64) Insert(Int32, Int64) Insert(Int32, Int64)

Вставляет строковое представление 64-разрядного знакового целого числа в данный экземпляр на указанную позицию символа.Inserts the string representation of a 64-bit signed integer into this instance at the specified character position.

public:
 System::Text::StringBuilder ^ Insert(int index, long value);
public System.Text.StringBuilder Insert (int index, long value);
member this.Insert : int * int64 -> System.Text.StringBuilder
Public Function Insert (index As Integer, value As Long) As StringBuilder

Параметры

index
Int32 Int32 Int32 Int32

Позиция в данном экземпляре, с которой начинается вставка.The position in this instance where insertion begins.

value
Int64 Int64 Int64 Int64

Значение, которое следует вставить.The value to insert.

Возвраты

Ссылка на этот экземпляр после завершения операции вставки.A reference to this instance after the insert operation has completed.

Исключения

index имеет значение меньше нуля или больше длины этого экземпляра.index is less than zero or greater than the length of this instance.

Увеличение значения этого экземпляра может привести к превышению MaxCapacity.Enlarging the value of this instance would exceed MaxCapacity.

Примеры

В следующем примере демонстрируется Insert метод.The following example demonstrates the Insert method.

using namespace System;
using namespace System::Text;
ref class Sample
{
private:

   //                           index: 012345
   static String^ initialValue = "--[]--";
   static StringBuilder^ sb;

public:
   static void Main()
   {
      String^ xyz = "xyz";
      array<Char>^abc = {'a','b','c'};
      Char star = '*';
      Object^ obj = 0;
      bool xBool = true;
      Byte xByte = 1;
      short xInt16 = 2;
      int xInt32 = 3;
      long xInt64 = 4;
      Decimal xDecimal = 5;
      float xSingle = 6.6F;
      double xDouble = 7.7;
      
      // The following types are not CLS-compliant.
      UInt16 xUInt16 = 8;
      UInt32 xUInt32 = 9;
      UInt64 xUInt64 = 10;
      SByte xSByte = -11;
      
      //
      Console::WriteLine( "StringBuilder.Insert method" );
      sb = gcnew StringBuilder( initialValue );
      sb->Insert( 3, xyz, 2 );
      Show( 1, sb );
      sb->Insert( 3, xyz );
      Show( 2, sb );
      sb->Insert( 3, star );
      Show( 3, sb );
      sb->Insert( 3, abc );
      Show( 4, sb );
      sb->Insert( 3, abc, 1, 2 );
      Show( 5, sb );
      sb->Insert( 3, xBool ); // True
      Show( 6, sb );
      sb->Insert( 3, obj ); // 0
      Show( 7, sb );
      sb->Insert( 3, xByte ); // 1
      Show( 8, sb );
      sb->Insert( 3, xInt16 ); // 2
      Show( 9, sb );
      sb->Insert( 3, xInt32 ); // 3
      Show( 10, sb );
      sb->Insert( 3, xInt64 ); // 4
      Show( 11, sb );
      sb->Insert( 3, xDecimal ); // 5
      Show( 12, sb );
      sb->Insert( 3, xSingle ); // 6.6
      Show( 13, sb );
      sb->Insert( 3, xDouble ); // 7.7
      Show( 14, sb );
      
      // The following Insert methods are not CLS-compliant.
      sb->Insert( 3, xUInt16 ); // 8
      Show( 15, sb );
      sb->Insert( 3, xUInt32 ); // 9
      Show( 16, sb );
      sb->Insert( 3, xUInt64 ); // 10
      Show( 17, sb );
      sb->Insert( 3, xSByte ); // -11
      Show( 18, sb );
      
      //
   }

   static void Show( int overloadNumber, StringBuilder^ sbs )
   {
      Console::WriteLine( "{0,2:G} = {1}", overloadNumber, sbs );
      sb = gcnew StringBuilder( initialValue );
   }

};

int main()
{
   Sample::Main();
}

/*
This example produces the following results:

StringBuilder.Insert method
 1 = --[xyzxyz]--
 2 = --[xyz]--
 3 = --[*]--
 4 = --[abc]--
 5 = --[bc]--
 6 = --[True]--
 7 = --[0]--
 8 = --[1]--
 9 = --[2]--
10 = --[3]--
11 = --[4]--
12 = --[5]--
13 = --[6.6]--
14 = --[7.7]--
15 = --[8]--
16 = --[9]--
17 = --[10]--
18 = --[-11]--

*/
using System;
using System.Text;

class Sample 
{
//                         index: 012345
    static string initialValue = "--[]--";
    static StringBuilder sb;

    public static void Main() 
    {
    string      xyz       = "xyz";
    char[]      abc       = {'a', 'b', 'c'};
    char        star      = '*';
    Object 	obj       = 0;

    bool        xBool     = true;
    byte        xByte     = 1;
    short       xInt16    = 2;
    int         xInt32    = 3;
    long        xInt64    = 4;
    Decimal     xDecimal  = 5;
    float       xSingle   = 6.6F;
    double      xDouble   = 7.7;

// The following types are not CLS-compliant.
    ushort      xUInt16   = 8;
    uint        xUInt32   = 9;
    ulong       xUInt64   = 10;
    sbyte       xSByte    = -11;
//
    Console.WriteLine("StringBuilder.Insert method");
    sb = new StringBuilder(initialValue);

    sb.Insert(3, xyz, 2);
    Show(1, sb);

    sb.Insert(3, xyz);
    Show(2, sb);

    sb.Insert(3, star);
    Show(3, sb);

    sb.Insert(3, abc);
    Show(4, sb);

    sb.Insert(3, abc, 1, 2);
    Show(5, sb);

    sb.Insert(3, xBool);     // True
    Show(6, sb);

    sb.Insert(3, obj);       // 0
    Show(7, sb);

    sb.Insert(3, xByte);     // 1
    Show(8, sb);

    sb.Insert(3, xInt16);    // 2
    Show(9, sb);

    sb.Insert(3, xInt32);    // 3
    Show(10, sb);

    sb.Insert(3, xInt64);    // 4
    Show(11, sb);

    sb.Insert(3, xDecimal);  // 5
    Show(12, sb);

    sb.Insert(3, xSingle);   // 6.6
    Show(13, sb);

    sb.Insert(3, xDouble);   // 7.7
    Show(14, sb);

// The following Insert methods are not CLS-compliant.
    sb.Insert(3, xUInt16);   // 8
    Show(15, sb);

    sb.Insert(3, xUInt32);   // 9
    Show(16, sb);

    sb.Insert(3, xUInt64);   // 10
    Show(17, sb);

    sb.Insert(3, xSByte);    // -11
    Show(18, sb);
//
    }

    public static void Show(int overloadNumber, StringBuilder sbs)
    {
    Console.WriteLine("{0,2:G} = {1}", overloadNumber, sbs.ToString());
    sb = new StringBuilder(initialValue);
    }
}
/*
This example produces the following results:

StringBuilder.Insert method
 1 = --[xyzxyz]--
 2 = --[xyz]--
 3 = --[*]--
 4 = --[abc]--
 5 = --[bc]--
 6 = --[True]--
 7 = --[0]--
 8 = --[1]--
 9 = --[2]--
10 = --[3]--
11 = --[4]--
12 = --[5]--
13 = --[6.6]--
14 = --[7.7]--
15 = --[8]--
16 = --[9]--
17 = --[10]--
18 = --[-11]--

*/
Imports System
Imports System.Text

Class Sample
   '                                 index: 012345
   Private Shared initialValue As String = "--[]--"
   Private Shared sb As StringBuilder
   
   Public Shared Sub Main()
      Dim xyz As String = "xyz"
      Dim abc As Char() =  {"a"c, "b"c, "c"c}
      Dim star As Char = "*"c
      Dim obj As [Object] = 0
      
      Dim xBool As Boolean = True
      Dim xByte As Byte = 1
      Dim xInt16 As Short = 2
      Dim xInt32 As Integer = 3
      Dim xInt64 As Long = 4
      Dim xDecimal As [Decimal] = 5
      Dim xSingle As Single = 6.6F
      Dim xDouble As Double = 7.7
      
      ' The following types are not CLS-compliant.
      ' Dim xUInt16 As System.UInt16 = 8 
      ' Dim xUInt32 As System.UInt32 = 9
      ' Dim xUInt64 As System.UInt64 = 10 
      ' Dim xSByte As System.SByte = - 11
      '
      Console.WriteLine("StringBuilder.Insert method")
      sb = New StringBuilder(initialValue)
      
      sb.Insert(3, xyz, 2)
      Show(1, sb)
      
      sb.Insert(3, xyz)
      Show(2, sb)
      
      sb.Insert(3, star)
      Show(3, sb)
      
      sb.Insert(3, abc)
      Show(4, sb)
      
      sb.Insert(3, abc, 1, 2)
      Show(5, sb)
      
      sb.Insert(3, xBool)     ' True
      Show(6, sb)
      
      sb.Insert(3, obj)       ' 0
      Show(7, sb)
      
      sb.Insert(3, xByte)     ' 1
      Show(8, sb)
      
      sb.Insert(3, xInt16)    ' 2
      Show(9, sb)
      
      sb.Insert(3, xInt32)    ' 3
      Show(10, sb)
      
      sb.Insert(3, xInt64)    ' 4
      Show(11, sb)
      
      sb.Insert(3, xDecimal)  ' 5
      Show(12, sb)
      
      sb.Insert(3, xSingle)   ' 6.6
      Show(13, sb)
      
      sb.Insert(3, xDouble)   ' 7.7
      Show(14, sb)
      
      ' The following Insert methods are not CLS-compliant.
      ' sb.Insert(3, xUInt16) ' 8
      ' sb.Insert(3, xUInt32) ' 9
      ' sb.Insert(3, xUInt64) ' 10
      ' sb.Insert(3, xSByte)  ' -11

   End Sub 'Main
   
   Public Shared Sub Show(overloadNumber As Integer, sbs As StringBuilder)
      Console.WriteLine("{0,2:G} = {1}", overloadNumber, sbs.ToString())
      sb = New StringBuilder(initialValue)
   End Sub 'Show
End Class 'Sample
'
'This example produces the following results:
'
'StringBuilder.Insert method
' 1 = --[xyzxyz]--
' 2 = --[xyz]--
' 3 = --[*]--
' 4 = --[abc]--
' 5 = --[bc]--
' 6 = --[True]--
' 7 = --[0]--
' 8 = --[1]--
' 9 = --[2]--
'10 = --[3]--
'11 = --[4]--
'12 = --[5]--
'13 = --[6.6]--
'14 = --[7.7]--
'

Комментарии

Int64.ToString используется для получения строкового представления value.Int64.ToString is used to get a string representation of value. Существующие символы сдвигаются, чтобы освободить место для нового текста.Existing characters are shifted to make room for the new text. При необходимости корректируется емкость данного экземпляра.The capacity of this instance is adjusted as needed.

Примечания для тех, кто вызывает этот метод

В .NET Framework 3.5 с пакетом обновления 1 (SP1).NET Framework 3.5 Service Pack 1 и более ранних версий, вызовы этого метода вызвал ArgumentOutOfRangeException Если вставка value для перевода объекта общая длина превысит MaxCapacity.In the .NET Framework 3.5 с пакетом обновления 1 (SP1).NET Framework 3.5 Service Pack 1 and earlier versions, calls to this method threw an ArgumentOutOfRangeException if inserting value would cause the object's total length to exceed MaxCapacity. Начиная с .NET Framework 4.NET Framework 4, метод вызывает OutOfMemoryException.Starting with the .NET Framework 4.NET Framework 4, the method throws an OutOfMemoryException.

Дополнительно

Insert(Int32, Int32) Insert(Int32, Int32) Insert(Int32, Int32) Insert(Int32, Int32)

Вставляет строковое представление указанного 32-разрядного знакового целого числа в данный экземпляр на указанную позицию символа.Inserts the string representation of a specified 32-bit signed integer into this instance at the specified character position.

public:
 System::Text::StringBuilder ^ Insert(int index, int value);
public System.Text.StringBuilder Insert (int index, int value);
member this.Insert : int * int -> System.Text.StringBuilder
Public Function Insert (index As Integer, value As Integer) As StringBuilder

Параметры

index
Int32 Int32 Int32 Int32

Позиция в данном экземпляре, с которой начинается вставка.The position in this instance where insertion begins.

value
Int32 Int32 Int32 Int32

Значение, которое следует вставить.The value to insert.

Возвраты

Ссылка на этот экземпляр после завершения операции вставки.A reference to this instance after the insert operation has completed.

Исключения

index имеет значение меньше нуля или больше длины этого экземпляра.index is less than zero or greater than the length of this instance.

Увеличение значения этого экземпляра может привести к превышению MaxCapacity.Enlarging the value of this instance would exceed MaxCapacity.

Примеры

В следующем примере демонстрируется Insert метод.The following example demonstrates the Insert method.

using namespace System;
using namespace System::Text;
ref class Sample
{
private:

   //                           index: 012345
   static String^ initialValue = "--[]--";
   static StringBuilder^ sb;

public:
   static void Main()
   {
      String^ xyz = "xyz";
      array<Char>^abc = {'a','b','c'};
      Char star = '*';
      Object^ obj = 0;
      bool xBool = true;
      Byte xByte = 1;
      short xInt16 = 2;
      int xInt32 = 3;
      long xInt64 = 4;
      Decimal xDecimal = 5;
      float xSingle = 6.6F;
      double xDouble = 7.7;
      
      // The following types are not CLS-compliant.
      UInt16 xUInt16 = 8;
      UInt32 xUInt32 = 9;
      UInt64 xUInt64 = 10;
      SByte xSByte = -11;
      
      //
      Console::WriteLine( "StringBuilder.Insert method" );
      sb = gcnew StringBuilder( initialValue );
      sb->Insert( 3, xyz, 2 );
      Show( 1, sb );
      sb->Insert( 3, xyz );
      Show( 2, sb );
      sb->Insert( 3, star );
      Show( 3, sb );
      sb->Insert( 3, abc );
      Show( 4, sb );
      sb->Insert( 3, abc, 1, 2 );
      Show( 5, sb );
      sb->Insert( 3, xBool ); // True
      Show( 6, sb );
      sb->Insert( 3, obj ); // 0
      Show( 7, sb );
      sb->Insert( 3, xByte ); // 1
      Show( 8, sb );
      sb->Insert( 3, xInt16 ); // 2
      Show( 9, sb );
      sb->Insert( 3, xInt32 ); // 3
      Show( 10, sb );
      sb->Insert( 3, xInt64 ); // 4
      Show( 11, sb );
      sb->Insert( 3, xDecimal ); // 5
      Show( 12, sb );
      sb->Insert( 3, xSingle ); // 6.6
      Show( 13, sb );
      sb->Insert( 3, xDouble ); // 7.7
      Show( 14, sb );
      
      // The following Insert methods are not CLS-compliant.
      sb->Insert( 3, xUInt16 ); // 8
      Show( 15, sb );
      sb->Insert( 3, xUInt32 ); // 9
      Show( 16, sb );
      sb->Insert( 3, xUInt64 ); // 10
      Show( 17, sb );
      sb->Insert( 3, xSByte ); // -11
      Show( 18, sb );
      
      //
   }

   static void Show( int overloadNumber, StringBuilder^ sbs )
   {
      Console::WriteLine( "{0,2:G} = {1}", overloadNumber, sbs );
      sb = gcnew StringBuilder( initialValue );
   }

};

int main()
{
   Sample::Main();
}

/*
This example produces the following results:

StringBuilder.Insert method
 1 = --[xyzxyz]--
 2 = --[xyz]--
 3 = --[*]--
 4 = --[abc]--
 5 = --[bc]--
 6 = --[True]--
 7 = --[0]--
 8 = --[1]--
 9 = --[2]--
10 = --[3]--
11 = --[4]--
12 = --[5]--
13 = --[6.6]--
14 = --[7.7]--
15 = --[8]--
16 = --[9]--
17 = --[10]--
18 = --[-11]--

*/
using System;
using System.Text;

class Sample 
{
//                         index: 012345
    static string initialValue = "--[]--";
    static StringBuilder sb;

    public static void Main() 
    {
    string      xyz       = "xyz";
    char[]      abc       = {'a', 'b', 'c'};
    char        star      = '*';
    Object 	obj       = 0;

    bool        xBool     = true;
    byte        xByte     = 1;
    short       xInt16    = 2;
    int         xInt32    = 3;
    long        xInt64    = 4;
    Decimal     xDecimal  = 5;
    float       xSingle   = 6.6F;
    double      xDouble   = 7.7;

// The following types are not CLS-compliant.
    ushort      xUInt16   = 8;
    uint        xUInt32   = 9;
    ulong       xUInt64   = 10;
    sbyte       xSByte    = -11;
//
    Console.WriteLine("StringBuilder.Insert method");
    sb = new StringBuilder(initialValue);

    sb.Insert(3, xyz, 2);
    Show(1, sb);

    sb.Insert(3, xyz);
    Show(2, sb);

    sb.Insert(3, star);
    Show(3, sb);

    sb.Insert(3, abc);
    Show(4, sb);

    sb.Insert(3, abc, 1, 2);
    Show(5, sb);

    sb.Insert(3, xBool);     // True
    Show(6, sb);

    sb.Insert(3, obj);       // 0
    Show(7, sb);

    sb.Insert(3, xByte);     // 1
    Show(8, sb);

    sb.Insert(3, xInt16);    // 2
    Show(9, sb);

    sb.Insert(3, xInt32);    // 3
    Show(10, sb);

    sb.Insert(3, xInt64);    // 4
    Show(11, sb);

    sb.Insert(3, xDecimal);  // 5
    Show(12, sb);

    sb.Insert(3, xSingle);   // 6.6
    Show(13, sb);

    sb.Insert(3, xDouble);   // 7.7
    Show(14, sb);

// The following Insert methods are not CLS-compliant.
    sb.Insert(3, xUInt16);   // 8
    Show(15, sb);

    sb.Insert(3, xUInt32);   // 9
    Show(16, sb);

    sb.Insert(3, xUInt64);   // 10
    Show(17, sb);

    sb.Insert(3, xSByte);    // -11
    Show(18, sb);
//
    }

    public static void Show(int overloadNumber, StringBuilder sbs)
    {
    Console.WriteLine("{0,2:G} = {1}", overloadNumber, sbs.ToString());
    sb = new StringBuilder(initialValue);
    }
}
/*
This example produces the following results:

StringBuilder.Insert method
 1 = --[xyzxyz]--
 2 = --[xyz]--
 3 = --[*]--
 4 = --[abc]--
 5 = --[bc]--
 6 = --[True]--
 7 = --[0]--
 8 = --[1]--
 9 = --[2]--
10 = --[3]--
11 = --[4]--
12 = --[5]--
13 = --[6.6]--
14 = --[7.7]--
15 = --[8]--
16 = --[9]--
17 = --[10]--
18 = --[-11]--

*/
Imports System
Imports System.Text

Class Sample
   '                                 index: 012345
   Private Shared initialValue As String = "--[]--"
   Private Shared sb As StringBuilder
   
   Public Shared Sub Main()
      Dim xyz As String = "xyz"
      Dim abc As Char() =  {"a"c, "b"c, "c"c}
      Dim star As Char = "*"c
      Dim obj As [Object] = 0
      
      Dim xBool As Boolean = True
      Dim xByte As Byte = 1
      Dim xInt16 As Short = 2
      Dim xInt32 As Integer = 3
      Dim xInt64 As Long = 4
      Dim xDecimal As [Decimal] = 5
      Dim xSingle As Single = 6.6F
      Dim xDouble As Double = 7.7
      
      ' The following types are not CLS-compliant.
      ' Dim xUInt16 As System.UInt16 = 8 
      ' Dim xUInt32 As System.UInt32 = 9
      ' Dim xUInt64 As System.UInt64 = 10 
      ' Dim xSByte As System.SByte = - 11
      '
      Console.WriteLine("StringBuilder.Insert method")
      sb = New StringBuilder(initialValue)
      
      sb.Insert(3, xyz, 2)
      Show(1, sb)
      
      sb.Insert(3, xyz)
      Show(2, sb)
      
      sb.Insert(3, star)
      Show(3, sb)
      
      sb.Insert(3, abc)
      Show(4, sb)
      
      sb.Insert(3, abc, 1, 2)
      Show(5, sb)
      
      sb.Insert(3, xBool)     ' True
      Show(6, sb)
      
      sb.Insert(3, obj)       ' 0
      Show(7, sb)
      
      sb.Insert(3, xByte)     ' 1
      Show(8, sb)
      
      sb.Insert(3, xInt16)    ' 2
      Show(9, sb)
      
      sb.Insert(3, xInt32)    ' 3
      Show(10, sb)
      
      sb.Insert(3, xInt64)    ' 4
      Show(11, sb)
      
      sb.Insert(3, xDecimal)  ' 5
      Show(12, sb)
      
      sb.Insert(3, xSingle)   ' 6.6
      Show(13, sb)
      
      sb.Insert(3, xDouble)   ' 7.7
      Show(14, sb)
      
      ' The following Insert methods are not CLS-compliant.
      ' sb.Insert(3, xUInt16) ' 8
      ' sb.Insert(3, xUInt32) ' 9
      ' sb.Insert(3, xUInt64) ' 10
      ' sb.Insert(3, xSByte)  ' -11

   End Sub 'Main
   
   Public Shared Sub Show(overloadNumber As Integer, sbs As StringBuilder)
      Console.WriteLine("{0,2:G} = {1}", overloadNumber, sbs.ToString())
      sb = New StringBuilder(initialValue)
   End Sub 'Show
End Class 'Sample
'
'This example produces the following results:
'
'StringBuilder.Insert method
' 1 = --[xyzxyz]--
' 2 = --[xyz]--
' 3 = --[*]--
' 4 = --[abc]--
' 5 = --[bc]--
' 6 = --[True]--
' 7 = --[0]--
' 8 = --[1]--
' 9 = --[2]--
'10 = --[3]--
'11 = --[4]--
'12 = --[5]--
'13 = --[6.6]--
'14 = --[7.7]--
'

Комментарии

Int32.ToString используется для получения строкового представления value.Int32.ToString is used to get a string representation of value. Существующие символы сдвигаются, чтобы освободить место для нового текста.Existing characters are shifted to make room for the new text. При необходимости корректируется емкость данного экземпляра.The capacity of this instance is adjusted as needed.

Примечания для тех, кто вызывает этот метод

В .NET Framework 3.5 с пакетом обновления 1 (SP1).NET Framework 3.5 Service Pack 1 и более ранних версий, вызовы этого метода вызвал ArgumentOutOfRangeException Если вставка value для перевода объекта общая длина превысит MaxCapacity.In the .NET Framework 3.5 с пакетом обновления 1 (SP1).NET Framework 3.5 Service Pack 1 and earlier versions, calls to this method threw an ArgumentOutOfRangeException if inserting value would cause the object's total length to exceed MaxCapacity. Начиная с .NET Framework 4.NET Framework 4, метод вызывает OutOfMemoryException.Starting with the .NET Framework 4.NET Framework 4, the method throws an OutOfMemoryException.

Дополнительно

Insert(Int32, Double) Insert(Int32, Double) Insert(Int32, Double) Insert(Int32, Double)

Вставляет строковое представление числа с плавающей запятой с удвоенной точностью в данный экземпляр на указанную позицию символа.Inserts the string representation of a double-precision floating-point number into this instance at the specified character position.

public:
 System::Text::StringBuilder ^ Insert(int index, double value);
public System.Text.StringBuilder Insert (int index, double value);
member this.Insert : int * double -> System.Text.StringBuilder
Public Function Insert (index As Integer, value As Double) As StringBuilder

Параметры

index
Int32 Int32 Int32 Int32

Позиция в данном экземпляре, с которой начинается вставка.The position in this instance where insertion begins.

value
Double Double Double Double

Значение, которое следует вставить.The value to insert.

Возвраты

Ссылка на этот экземпляр после завершения операции вставки.A reference to this instance after the insert operation has completed.

Исключения

index имеет значение меньше нуля или больше длины этого экземпляра.index is less than zero or greater than the length of this instance.

Увеличение значения этого экземпляра может привести к превышению MaxCapacity.Enlarging the value of this instance would exceed MaxCapacity.

Примеры

В следующем примере демонстрируется Insert метод.The following example demonstrates the Insert method.

using namespace System;
using namespace System::Text;
ref class Sample
{
private:

   //                           index: 012345
   static String^ initialValue = "--[]--";
   static StringBuilder^ sb;

public:
   static void Main()
   {
      String^ xyz = "xyz";
      array<Char>^abc = {'a','b','c'};
      Char star = '*';
      Object^ obj = 0;
      bool xBool = true;
      Byte xByte = 1;
      short xInt16 = 2;
      int xInt32 = 3;
      long xInt64 = 4;
      Decimal xDecimal = 5;
      float xSingle = 6.6F;
      double xDouble = 7.7;
      
      // The following types are not CLS-compliant.
      UInt16 xUInt16 = 8;
      UInt32 xUInt32 = 9;
      UInt64 xUInt64 = 10;
      SByte xSByte = -11;
      
      //
      Console::WriteLine( "StringBuilder.Insert method" );
      sb = gcnew StringBuilder( initialValue );
      sb->Insert( 3, xyz, 2 );
      Show( 1, sb );
      sb->Insert( 3, xyz );
      Show( 2, sb );
      sb->Insert( 3, star );
      Show( 3, sb );
      sb->Insert( 3, abc );
      Show( 4, sb );
      sb->Insert( 3, abc, 1, 2 );
      Show( 5, sb );
      sb->Insert( 3, xBool ); // True
      Show( 6, sb );
      sb->Insert( 3, obj ); // 0
      Show( 7, sb );
      sb->Insert( 3, xByte ); // 1
      Show( 8, sb );
      sb->Insert( 3, xInt16 ); // 2
      Show( 9, sb );
      sb->Insert( 3, xInt32 ); // 3
      Show( 10, sb );
      sb->Insert( 3, xInt64 ); // 4
      Show( 11, sb );
      sb->Insert( 3, xDecimal ); // 5
      Show( 12, sb );
      sb->Insert( 3, xSingle ); // 6.6
      Show( 13, sb );
      sb->Insert( 3, xDouble ); // 7.7
      Show( 14, sb );
      
      // The following Insert methods are not CLS-compliant.
      sb->Insert( 3, xUInt16 ); // 8
      Show( 15, sb );
      sb->Insert( 3, xUInt32 ); // 9
      Show( 16, sb );
      sb->Insert( 3, xUInt64 ); // 10
      Show( 17, sb );
      sb->Insert( 3, xSByte ); // -11
      Show( 18, sb );
      
      //
   }

   static void Show( int overloadNumber, StringBuilder^ sbs )
   {
      Console::WriteLine( "{0,2:G} = {1}", overloadNumber, sbs );
      sb = gcnew StringBuilder( initialValue );
   }

};

int main()
{
   Sample::Main();
}

/*
This example produces the following results:

StringBuilder.Insert method
 1 = --[xyzxyz]--
 2 = --[xyz]--
 3 = --[*]--
 4 = --[abc]--
 5 = --[bc]--
 6 = --[True]--
 7 = --[0]--
 8 = --[1]--
 9 = --[2]--
10 = --[3]--
11 = --[4]--
12 = --[5]--
13 = --[6.6]--
14 = --[7.7]--
15 = --[8]--
16 = --[9]--
17 = --[10]--
18 = --[-11]--

*/
using System;
using System.Text;

class Sample 
{
//                         index: 012345
    static string initialValue = "--[]--";
    static StringBuilder sb;

    public static void Main() 
    {
    string      xyz       = "xyz";
    char[]      abc       = {'a', 'b', 'c'};
    char        star      = '*';
    Object 	obj       = 0;

    bool        xBool     = true;
    byte        xByte     = 1;
    short       xInt16    = 2;
    int         xInt32    = 3;
    long        xInt64    = 4;
    Decimal     xDecimal  = 5;
    float       xSingle   = 6.6F;
    double      xDouble   = 7.7;

// The following types are not CLS-compliant.
    ushort      xUInt16   = 8;
    uint        xUInt32   = 9;
    ulong       xUInt64   = 10;
    sbyte       xSByte    = -11;
//
    Console.WriteLine("StringBuilder.Insert method");
    sb = new StringBuilder(initialValue);

    sb.Insert(3, xyz, 2);
    Show(1, sb);

    sb.Insert(3, xyz);
    Show(2, sb);

    sb.Insert(3, star);
    Show(3, sb);

    sb.Insert(3, abc);
    Show(4, sb);

    sb.Insert(3, abc, 1, 2);
    Show(5, sb);

    sb.Insert(3, xBool);     // True
    Show(6, sb);

    sb.Insert(3, obj);       // 0
    Show(7, sb);

    sb.Insert(3, xByte);     // 1
    Show(8, sb);

    sb.Insert(3, xInt16);    // 2
    Show(9, sb);

    sb.Insert(3, xInt32);    // 3
    Show(10, sb);

    sb.Insert(3, xInt64);    // 4
    Show(11, sb);

    sb.Insert(3, xDecimal);  // 5
    Show(12, sb);

    sb.Insert(3, xSingle);   // 6.6
    Show(13, sb);

    sb.Insert(3, xDouble);   // 7.7
    Show(14, sb);

// The following Insert methods are not CLS-compliant.
    sb.Insert(3, xUInt16);   // 8
    Show(15, sb);

    sb.Insert(3, xUInt32);   // 9
    Show(16, sb);

    sb.Insert(3, xUInt64);   // 10
    Show(17, sb);

    sb.Insert(3, xSByte);    // -11
    Show(18, sb);
//
    }

    public static void Show(int overloadNumber, StringBuilder sbs)
    {
    Console.WriteLine("{0,2:G} = {1}", overloadNumber, sbs.ToString());
    sb = new StringBuilder(initialValue);
    }
}
/*
This example produces the following results:

StringBuilder.Insert method
 1 = --[xyzxyz]--
 2 = --[xyz]--
 3 = --[*]--
 4 = --[abc]--
 5 = --[bc]--
 6 = --[True]--
 7 = --[0]--
 8 = --[1]--
 9 = --[2]--
10 = --[3]--
11 = --[4]--
12 = --[5]--
13 = --[6.6]--
14 = --[7.7]--
15 = --[8]--
16 = --[9]--
17 = --[10]--
18 = --[-11]--

*/
Imports System
Imports System.Text

Class Sample
   '                                 index: 012345
   Private Shared initialValue As String = "--[]--"
   Private Shared sb As StringBuilder
   
   Public Shared Sub Main()
      Dim xyz As String = "xyz"
      Dim abc As Char() =  {"a"c, "b"c, "c"c}
      Dim star As Char = "*"c
      Dim obj As [Object] = 0
      
      Dim xBool As Boolean = True
      Dim xByte As Byte = 1
      Dim xInt16 As Short = 2
      Dim xInt32 As Integer = 3
      Dim xInt64 As Long = 4
      Dim xDecimal As [Decimal] = 5
      Dim xSingle As Single = 6.6F
      Dim xDouble As Double = 7.7
      
      ' The following types are not CLS-compliant.
      ' Dim xUInt16 As System.UInt16 = 8 
      ' Dim xUInt32 As System.UInt32 = 9
      ' Dim xUInt64 As System.UInt64 = 10 
      ' Dim xSByte As System.SByte = - 11
      '
      Console.WriteLine("StringBuilder.Insert method")
      sb = New StringBuilder(initialValue)
      
      sb.Insert(3, xyz, 2)
      Show(1, sb)
      
      sb.Insert(3, xyz)
      Show(2, sb)
      
      sb.Insert(3, star)
      Show(3, sb)
      
      sb.Insert(3, abc)
      Show(4, sb)
      
      sb.Insert(3, abc, 1, 2)
      Show(5, sb)
      
      sb.Insert(3, xBool)     ' True
      Show(6, sb)
      
      sb.Insert(3, obj)       ' 0
      Show(7, sb)
      
      sb.Insert(3, xByte)     ' 1
      Show(8, sb)
      
      sb.Insert(3, xInt16)    ' 2
      Show(9, sb)
      
      sb.Insert(3, xInt32)    ' 3
      Show(10, sb)
      
      sb.Insert(3, xInt64)    ' 4
      Show(11, sb)
      
      sb.Insert(3, xDecimal)  ' 5
      Show(12, sb)
      
      sb.Insert(3, xSingle)   ' 6.6
      Show(13, sb)
      
      sb.Insert(3, xDouble)   ' 7.7
      Show(14, sb)
      
      ' The following Insert methods are not CLS-compliant.
      ' sb.Insert(3, xUInt16) ' 8
      ' sb.Insert(3, xUInt32) ' 9
      ' sb.Insert(3, xUInt64) ' 10
      ' sb.Insert(3, xSByte)  ' -11

   End Sub 'Main
   
   Public Shared Sub Show(overloadNumber As Integer, sbs As StringBuilder)
      Console.WriteLine("{0,2:G} = {1}", overloadNumber, sbs.ToString())
      sb = New StringBuilder(initialValue)
   End Sub 'Show
End Class 'Sample
'
'This example produces the following results:
'
'StringBuilder.Insert method
' 1 = --[xyzxyz]--
' 2 = --[xyz]--
' 3 = --[*]--
' 4 = --[abc]--
' 5 = --[bc]--
' 6 = --[True]--
' 7 = --[0]--
' 8 = --[1]--
' 9 = --[2]--
'10 = --[3]--
'11 = --[4]--
'12 = --[5]--
'13 = --[6.6]--
'14 = --[7.7]--
'

Комментарии

Double.ToString используется для получения строкового представления value.Double.ToString is used to get a string representation of value. Существующие символы сдвигаются, чтобы освободить место для нового текста.Existing characters are shifted to make room for the new text. При необходимости корректируется емкость данного экземпляра.The capacity of this instance is adjusted as needed.

Примечания для тех, кто вызывает этот метод

В .NET Framework 3.5 с пакетом обновления 1 (SP1).NET Framework 3.5 Service Pack 1 и более ранних версий, вызовы этого метода вызвал ArgumentOutOfRangeException Если вставка value для перевода объекта общая длина превысит MaxCapacity.In the .NET Framework 3.5 с пакетом обновления 1 (SP1).NET Framework 3.5 Service Pack 1 and earlier versions, calls to this method threw an ArgumentOutOfRangeException if inserting value would cause the object's total length to exceed MaxCapacity. Начиная с .NET Framework 4.NET Framework 4, метод вызывает OutOfMemoryException.Starting with the .NET Framework 4.NET Framework 4, the method throws an OutOfMemoryException.

Дополнительно

Insert(Int32, Decimal) Insert(Int32, Decimal) Insert(Int32, Decimal) Insert(Int32, Decimal)

Вставляет строковое представление десятичного числа в данный экземпляр на указанную позицию символа.Inserts the string representation of a decimal number into this instance at the specified character position.

public:
 System::Text::StringBuilder ^ Insert(int index, System::Decimal value);
public System.Text.StringBuilder Insert (int index, decimal value);
member this.Insert : int * decimal -> System.Text.StringBuilder
Public Function Insert (index As Integer, value As Decimal) As StringBuilder

Параметры

index
Int32 Int32 Int32 Int32

Позиция в данном экземпляре, с которой начинается вставка.The position in this instance where insertion begins.

value
Decimal Decimal Decimal Decimal

Значение, которое следует вставить.The value to insert.

Возвраты

Ссылка на этот экземпляр после завершения операции вставки.A reference to this instance after the insert operation has completed.

Исключения

index имеет значение меньше нуля или больше длины этого экземпляра.index is less than zero or greater than the length of this instance.

Увеличение значения этого экземпляра может привести к превышению MaxCapacity.Enlarging the value of this instance would exceed MaxCapacity.

Примеры

В следующем примере демонстрируется Insert метод.The following example demonstrates the Insert method.

using namespace System;
using namespace System::Text;
ref class Sample
{
private:

   //                           index: 012345
   static String^ initialValue = "--[]--";
   static StringBuilder^ sb;

public:
   static void Main()
   {
      String^ xyz = "xyz";
      array<Char>^abc = {'a','b','c'};
      Char star = '*';
      Object^ obj = 0;
      bool xBool = true;
      Byte xByte = 1;
      short xInt16 = 2;
      int xInt32 = 3;
      long xInt64 = 4;
      Decimal xDecimal = 5;
      float xSingle = 6.6F;
      double xDouble = 7.7;
      
      // The following types are not CLS-compliant.
      UInt16 xUInt16 = 8;
      UInt32 xUInt32 = 9;
      UInt64 xUInt64 = 10;
      SByte xSByte = -11;
      
      //
      Console::WriteLine( "StringBuilder.Insert method" );
      sb = gcnew StringBuilder( initialValue );
      sb->Insert( 3, xyz, 2 );
      Show( 1, sb );
      sb->Insert( 3, xyz );
      Show( 2, sb );
      sb->Insert( 3, star );
      Show( 3, sb );
      sb->Insert( 3, abc );
      Show( 4, sb );
      sb->Insert( 3, abc, 1, 2 );
      Show( 5, sb );
      sb->Insert( 3, xBool ); // True
      Show( 6, sb );
      sb->Insert( 3, obj ); // 0
      Show( 7, sb );
      sb->Insert( 3, xByte ); // 1
      Show( 8, sb );
      sb->Insert( 3, xInt16 ); // 2
      Show( 9, sb );
      sb->Insert( 3, xInt32 ); // 3
      Show( 10, sb );
      sb->Insert( 3, xInt64 ); // 4
      Show( 11, sb );
      sb->Insert( 3, xDecimal ); // 5
      Show( 12, sb );
      sb->Insert( 3, xSingle ); // 6.6
      Show( 13, sb );
      sb->Insert( 3, xDouble ); // 7.7
      Show( 14, sb );
      
      // The following Insert methods are not CLS-compliant.
      sb->Insert( 3, xUInt16 ); // 8
      Show( 15, sb );
      sb->Insert( 3, xUInt32 ); // 9
      Show( 16, sb );
      sb->Insert( 3, xUInt64 ); // 10
      Show( 17, sb );
      sb->Insert( 3, xSByte ); // -11
      Show( 18, sb );
      
      //
   }

   static void Show( int overloadNumber, StringBuilder^ sbs )
   {
      Console::WriteLine( "{0,2:G} = {1}", overloadNumber, sbs );
      sb = gcnew StringBuilder( initialValue );
   }

};

int main()
{
   Sample::Main();
}

/*
This example produces the following results:

StringBuilder.Insert method
 1 = --[xyzxyz]--
 2 = --[xyz]--
 3 = --[*]--
 4 = --[abc]--
 5 = --[bc]--
 6 = --[True]--
 7 = --[0]--
 8 = --[1]--
 9 = --[2]--
10 = --[3]--
11 = --[4]--
12 = --[5]--
13 = --[6.6]--
14 = --[7.7]--
15 = --[8]--
16 = --[9]--
17 = --[10]--
18 = --[-11]--

*/
using System;
using System.Text;

class Sample 
{
//                         index: 012345
    static string initialValue = "--[]--";
    static StringBuilder sb;

    public static void Main() 
    {
    string      xyz       = "xyz";
    char[]      abc       = {'a', 'b', 'c'};
    char        star      = '*';
    Object 	obj       = 0;

    bool        xBool     = true;
    byte        xByte     = 1;
    short       xInt16    = 2;
    int         xInt32    = 3;
    long        xInt64    = 4;
    Decimal     xDecimal  = 5;
    float       xSingle   = 6.6F;
    double      xDouble   = 7.7;

// The following types are not CLS-compliant.
    ushort      xUInt16   = 8;
    uint        xUInt32   = 9;
    ulong       xUInt64   = 10;
    sbyte       xSByte    = -11;
//
    Console.WriteLine("StringBuilder.Insert method");
    sb = new StringBuilder(initialValue);

    sb.Insert(3, xyz, 2);
    Show(1, sb);

    sb.Insert(3, xyz);
    Show(2, sb);

    sb.Insert(3, star);
    Show(3, sb);

    sb.Insert(3, abc);
    Show(4, sb);

    sb.Insert(3, abc, 1, 2);
    Show(5, sb);

    sb.Insert(3, xBool);     // True
    Show(6, sb);

    sb.Insert(3, obj);       // 0
    Show(7, sb);

    sb.Insert(3, xByte);     // 1
    Show(8, sb);

    sb.Insert(3, xInt16);    // 2
    Show(9, sb);

    sb.Insert(3, xInt32);    // 3
    Show(10, sb);

    sb.Insert(3, xInt64);    // 4
    Show(11, sb);

    sb.Insert(3, xDecimal);  // 5
    Show(12, sb);

    sb.Insert(3, xSingle);   // 6.6
    Show(13, sb);

    sb.Insert(3, xDouble);   // 7.7
    Show(14, sb);

// The following Insert methods are not CLS-compliant.
    sb.Insert(3, xUInt16);   // 8
    Show(15, sb);

    sb.Insert(3, xUInt32);   // 9
    Show(16, sb);

    sb.Insert(3, xUInt64);   // 10
    Show(17, sb);

    sb.Insert(3, xSByte);    // -11
    Show(18, sb);
//
    }

    public static void Show(int overloadNumber, StringBuilder sbs)
    {
    Console.WriteLine("{0,2:G} = {1}", overloadNumber, sbs.ToString());
    sb = new StringBuilder(initialValue);
    }
}
/*
This example produces the following results:

StringBuilder.Insert method
 1 = --[xyzxyz]--
 2 = --[xyz]--
 3 = --[*]--
 4 = --[abc]--
 5 = --[bc]--
 6 = --[True]--
 7 = --[0]--
 8 = --[1]--
 9 = --[2]--
10 = --[3]--
11 = --[4]--
12 = --[5]--
13 = --[6.6]--
14 = --[7.7]--
15 = --[8]--
16 = --[9]--
17 = --[10]--
18 = --[-11]--

*/
Imports System
Imports System.Text

Class Sample
   '                                 index: 012345
   Private Shared initialValue As String = "--[]--"
   Private Shared sb As StringBuilder
   
   Public Shared Sub Main()
      Dim xyz As String = "xyz"
      Dim abc As Char() =  {"a"c, "b"c, "c"c}
      Dim star As Char = "*"c
      Dim obj As [Object] = 0
      
      Dim xBool As Boolean = True
      Dim xByte As Byte = 1
      Dim xInt16 As Short = 2
      Dim xInt32 As Integer = 3
      Dim xInt64 As Long = 4
      Dim xDecimal As [Decimal] = 5
      Dim xSingle As Single = 6.6F
      Dim xDouble As Double = 7.7
      
      ' The following types are not CLS-compliant.
      ' Dim xUInt16 As System.UInt16 = 8 
      ' Dim xUInt32 As System.UInt32 = 9
      ' Dim xUInt64 As System.UInt64 = 10 
      ' Dim xSByte As System.SByte = - 11
      '
      Console.WriteLine("StringBuilder.Insert method")
      sb = New StringBuilder(initialValue)
      
      sb.Insert(3, xyz, 2)
      Show(1, sb)
      
      sb.Insert(3, xyz)
      Show(2, sb)
      
      sb.Insert(3, star)
      Show(3, sb)
      
      sb.Insert(3, abc)
      Show(4, sb)
      
      sb.Insert(3, abc, 1, 2)
      Show(5, sb)
      
      sb.Insert(3, xBool)     ' True
      Show(6, sb)
      
      sb.Insert(3, obj)       ' 0
      Show(7, sb)
      
      sb.Insert(3, xByte)     ' 1
      Show(8, sb)
      
      sb.Insert(3, xInt16)    ' 2
      Show(9, sb)
      
      sb.Insert(3, xInt32)    ' 3
      Show(10, sb)
      
      sb.Insert(3, xInt64)    ' 4
      Show(11, sb)
      
      sb.Insert(3, xDecimal)  ' 5
      Show(12, sb)
      
      sb.Insert(3, xSingle)   ' 6.6
      Show(13, sb)
      
      sb.Insert(3, xDouble)   ' 7.7
      Show(14, sb)
      
      ' The following Insert methods are not CLS-compliant.
      ' sb.Insert(3, xUInt16) ' 8
      ' sb.Insert(3, xUInt32) ' 9
      ' sb.Insert(3, xUInt64) ' 10
      ' sb.Insert(3, xSByte)  ' -11

   End Sub 'Main
   
   Public Shared Sub Show(overloadNumber As Integer, sbs As StringBuilder)
      Console.WriteLine("{0,2:G} = {1}", overloadNumber, sbs.ToString())
      sb = New StringBuilder(initialValue)
   End Sub 'Show
End Class 'Sample
'
'This example produces the following results:
'
'StringBuilder.Insert method
' 1 = --[xyzxyz]--
' 2 = --[xyz]--
' 3 = --[*]--
' 4 = --[abc]--
' 5 = --[bc]--
' 6 = --[True]--
' 7 = --[0]--
' 8 = --[1]--
' 9 = --[2]--
'10 = --[3]--
'11 = --[4]--
'12 = --[5]--
'13 = --[6.6]--
'14 = --[7.7]--
'

Комментарии

Decimal.ToString используется для получения строкового представления value.Decimal.ToString is used to get a string representation of value. Существующие символы сдвигаются, чтобы освободить место для нового текста.Existing characters are shifted to make room for the new text. При необходимости корректируется емкость данного экземпляра.The capacity of this instance is adjusted as needed.

Примечания для тех, кто вызывает этот метод

В .NET Framework 3.5 с пакетом обновления 1 (SP1).NET Framework 3.5 Service Pack 1 и более ранних версий, вызовы этого метода вызвал ArgumentOutOfRangeException Если вставка value для перевода объекта общая длина превысит MaxCapacity.In the .NET Framework 3.5 с пакетом обновления 1 (SP1).NET Framework 3.5 Service Pack 1 and earlier versions, calls to this method threw an ArgumentOutOfRangeException if inserting value would cause the object's total length to exceed MaxCapacity. Начиная с .NET Framework 4.NET Framework 4, метод вызывает OutOfMemoryException.Starting with the .NET Framework 4.NET Framework 4, the method throws an OutOfMemoryException.

Дополнительно

Insert(Int32, Char[]) Insert(Int32, Char[]) Insert(Int32, Char[]) Insert(Int32, Char[])

Вставляет строковое представление указанного массива символов Юникода в данный экземпляр на указанную позицию символа.Inserts the string representation of a specified array of Unicode characters into this instance at the specified character position.

public:
 System::Text::StringBuilder ^ Insert(int index, cli::array <char> ^ value);
public System.Text.StringBuilder Insert (int index, char[] value);
member this.Insert : int * char[] -> System.Text.StringBuilder
Public Function Insert (index As Integer, value As Char()) As StringBuilder

Параметры

index
Int32 Int32 Int32 Int32

Позиция в данном экземпляре, с которой начинается вставка.The position in this instance where insertion begins.

value
Char[]

Массив символов для вставки.The character array to insert.

Возвраты

Ссылка на этот экземпляр после завершения операции вставки.A reference to this instance after the insert operation has completed.

Исключения

index имеет значение меньше нуля или больше длины этого экземпляра.index is less than zero or greater than the length of this instance.

-или--or- Увеличение значения этого экземпляра может привести к превышению MaxCapacity.Enlarging the value of this instance would exceed MaxCapacity.

Примеры

В следующем примере демонстрируется Insert метод.The following example demonstrates the Insert method.

using namespace System;
using namespace System::Text;
ref class Sample
{
private:

   //                           index: 012345
   static String^ initialValue = "--[]--";
   static StringBuilder^ sb;

public:
   static void Main()
   {
      String^ xyz = "xyz";
      array<Char>^abc = {'a','b','c'};
      Char star = '*';
      Object^ obj = 0;
      bool xBool = true;
      Byte xByte = 1;
      short xInt16 = 2;
      int xInt32 = 3;
      long xInt64 = 4;
      Decimal xDecimal = 5;
      float xSingle = 6.6F;
      double xDouble = 7.7;
      
      // The following types are not CLS-compliant.
      UInt16 xUInt16 = 8;
      UInt32 xUInt32 = 9;
      UInt64 xUInt64 = 10;
      SByte xSByte = -11;
      
      //
      Console::WriteLine( "StringBuilder.Insert method" );
      sb = gcnew StringBuilder( initialValue );
      sb->Insert( 3, xyz, 2 );
      Show( 1, sb );
      sb->Insert( 3, xyz );
      Show( 2, sb );
      sb->Insert( 3, star );
      Show( 3, sb );
      sb->Insert( 3, abc );
      Show( 4, sb );
      sb->Insert( 3, abc, 1, 2 );
      Show( 5, sb );
      sb->Insert( 3, xBool ); // True
      Show( 6, sb );
      sb->Insert( 3, obj ); // 0
      Show( 7, sb );
      sb->Insert( 3, xByte ); // 1
      Show( 8, sb );
      sb->Insert( 3, xInt16 ); // 2
      Show( 9, sb );
      sb->Insert( 3, xInt32 ); // 3
      Show( 10, sb );
      sb->Insert( 3, xInt64 ); // 4
      Show( 11, sb );
      sb->Insert( 3, xDecimal ); // 5
      Show( 12, sb );
      sb->Insert( 3, xSingle ); // 6.6
      Show( 13, sb );
      sb->Insert( 3, xDouble ); // 7.7
      Show( 14, sb );
      
      // The following Insert methods are not CLS-compliant.
      sb->Insert( 3, xUInt16 ); // 8
      Show( 15, sb );
      sb->Insert( 3, xUInt32 ); // 9
      Show( 16, sb );
      sb->Insert( 3, xUInt64 ); // 10
      Show( 17, sb );
      sb->Insert( 3, xSByte ); // -11
      Show( 18, sb );
      
      //
   }

   static void Show( int overloadNumber, StringBuilder^ sbs )
   {
      Console::WriteLine( "{0,2:G} = {1}", overloadNumber, sbs );
      sb = gcnew StringBuilder( initialValue );
   }

};

int main()
{
   Sample::Main();
}

/*
This example produces the following results:

StringBuilder.Insert method
 1 = --[xyzxyz]--
 2 = --[xyz]--
 3 = --[*]--
 4 = --[abc]--
 5 = --[bc]--
 6 = --[True]--
 7 = --[0]--
 8 = --[1]--
 9 = --[2]--
10 = --[3]--
11 = --[4]--
12 = --[5]--
13 = --[6.6]--
14 = --[7.7]--
15 = --[8]--
16 = --[9]--
17 = --[10]--
18 = --[-11]--

*/
using System;
using System.Text;

class Sample 
{
//                         index: 012345
    static string initialValue = "--[]--";
    static StringBuilder sb;

    public static void Main() 
    {
    string      xyz       = "xyz";
    char[]      abc       = {'a', 'b', 'c'};
    char        star      = '*';
    Object 	obj       = 0;

    bool        xBool     = true;
    byte        xByte     = 1;
    short       xInt16    = 2;
    int         xInt32    = 3;
    long        xInt64    = 4;
    Decimal     xDecimal  = 5;
    float       xSingle   = 6.6F;
    double      xDouble   = 7.7;

// The following types are not CLS-compliant.
    ushort      xUInt16   = 8;
    uint        xUInt32   = 9;
    ulong       xUInt64   = 10;
    sbyte       xSByte    = -11;
//
    Console.WriteLine("StringBuilder.Insert method");
    sb = new StringBuilder(initialValue);

    sb.Insert(3, xyz, 2);
    Show(1, sb);

    sb.Insert(3, xyz);
    Show(2, sb);

    sb.Insert(3, star);
    Show(3, sb);

    sb.Insert(3, abc);
    Show(4, sb);

    sb.Insert(3, abc, 1, 2);
    Show(5, sb);

    sb.Insert(3, xBool);     // True
    Show(6, sb);

    sb.Insert(3, obj);       // 0
    Show(7, sb);

    sb.Insert(3, xByte);     // 1
    Show(8, sb);

    sb.Insert(3, xInt16);    // 2
    Show(9, sb);

    sb.Insert(3, xInt32);    // 3
    Show(10, sb);

    sb.Insert(3, xInt64);    // 4
    Show(11, sb);

    sb.Insert(3, xDecimal);  // 5
    Show(12, sb);

    sb.Insert(3, xSingle);   // 6.6
    Show(13, sb);

    sb.Insert(3, xDouble);   // 7.7
    Show(14, sb);

// The following Insert methods are not CLS-compliant.
    sb.Insert(3, xUInt16);   // 8
    Show(15, sb);

    sb.Insert(3, xUInt32);   // 9
    Show(16, sb);

    sb.Insert(3, xUInt64);   // 10
    Show(17, sb);

    sb.Insert(3, xSByte);    // -11
    Show(18, sb);
//
    }

    public static void Show(int overloadNumber, StringBuilder sbs)
    {
    Console.WriteLine("{0,2:G} = {1}", overloadNumber, sbs.ToString());
    sb = new StringBuilder(initialValue);
    }
}
/*
This example produces the following results:

StringBuilder.Insert method
 1 = --[xyzxyz]--
 2 = --[xyz]--
 3 = --[*]--
 4 = --[abc]--
 5 = --[bc]--
 6 = --[True]--
 7 = --[0]--
 8 = --[1]--
 9 = --[2]--
10 = --[3]--
11 = --[4]--
12 = --[5]--
13 = --[6.6]--
14 = --[7.7]--
15 = --[8]--
16 = --[9]--
17 = --[10]--
18 = --[-11]--

*/
Imports System
Imports System.Text

Class Sample
   '                                 index: 012345
   Private Shared initialValue As String = "--[]--"
   Private Shared sb As StringBuilder
   
   Public Shared Sub Main()
      Dim xyz As String = "xyz"
      Dim abc As Char() =  {"a"c, "b"c, "c"c}
      Dim star As Char = "*"c
      Dim obj As [Object] = 0
      
      Dim xBool As Boolean = True
      Dim xByte As Byte = 1
      Dim xInt16 As Short = 2
      Dim xInt32 As Integer = 3
      Dim xInt64 As Long = 4
      Dim xDecimal As [Decimal] = 5
      Dim xSingle As Single = 6.6F
      Dim xDouble As Double = 7.7
      
      ' The following types are not CLS-compliant.
      ' Dim xUInt16 As System.UInt16 = 8 
      ' Dim xUInt32 As System.UInt32 = 9
      ' Dim xUInt64 As System.UInt64 = 10 
      ' Dim xSByte As System.SByte = - 11
      '
      Console.WriteLine("StringBuilder.Insert method")
      sb = New StringBuilder(initialValue)
      
      sb.Insert(3, xyz, 2)
      Show(1, sb)
      
      sb.Insert(3, xyz)
      Show(2, sb)
      
      sb.Insert(3, star)
      Show(3, sb)
      
      sb.Insert(3, abc)
      Show(4, sb)
      
      sb.Insert(3, abc, 1, 2)
      Show(5, sb)
      
      sb.Insert(3, xBool)     ' True
      Show(6, sb)
      
      sb.Insert(3, obj)       ' 0
      Show(7, sb)
      
      sb.Insert(3, xByte)     ' 1
      Show(8, sb)
      
      sb.Insert(3, xInt16)    ' 2
      Show(9, sb)
      
      sb.Insert(3, xInt32)    ' 3
      Show(10, sb)
      
      sb.Insert(3, xInt64)    ' 4
      Show(11, sb)
      
      sb.Insert(3, xDecimal)  ' 5
      Show(12, sb)
      
      sb.Insert(3, xSingle)   ' 6.6
      Show(13, sb)
      
      sb.Insert(3, xDouble)   ' 7.7
      Show(14, sb)
      
      ' The following Insert methods are not CLS-compliant.
      ' sb.Insert(3, xUInt16) ' 8
      ' sb.Insert(3, xUInt32) ' 9
      ' sb.Insert(3, xUInt64) ' 10
      ' sb.Insert(3, xSByte)  ' -11

   End Sub 'Main
   
   Public Shared Sub Show(overloadNumber As Integer, sbs As StringBuilder)
      Console.WriteLine("{0,2:G} = {1}", overloadNumber, sbs.ToString())
      sb = New StringBuilder(initialValue)
   End Sub 'Show
End Class 'Sample
'
'This example produces the following results:
'
'StringBuilder.Insert method
' 1 = --[xyzxyz]--
' 2 = --[xyz]--
' 3 = --[*]--
' 4 = --[abc]--
' 5 = --[bc]--
' 6 = --[True]--
' 7 = --[0]--
' 8 = --[1]--
' 9 = --[2]--
'10 = --[3]--
'11 = --[4]--
'12 = --[5]--
'13 = --[6.6]--
'14 = --[7.7]--
'

Комментарии

Существующие символы сдвигаются, чтобы освободить место для нового текста.Existing characters are shifted to make room for the new text. При необходимости корректируется емкость данного экземпляра.The capacity of this instance is adjusted as needed.

Если valuenull, StringBuilder не изменяется.If value is null, the StringBuilder is not changed.

Insert(Int32, Char) Insert(Int32, Char) Insert(Int32, Char) Insert(Int32, Char)

Вставляет строковое представление указанного символа Юникода в данный экземпляр на указанную позицию символа.Inserts the string representation of a specified Unicode character into this instance at the specified character position.

public:
 System::Text::StringBuilder ^ Insert(int index, char value);
public System.Text.StringBuilder Insert (int index, char value);
member this.Insert : int * char -> System.Text.StringBuilder
Public Function Insert (index As Integer, value As Char) As StringBuilder

Параметры

index
Int32 Int32 Int32 Int32

Позиция в данном экземпляре, с которой начинается вставка.The position in this instance where insertion begins.

value
Char Char Char Char

Значение, которое следует вставить.The value to insert.

Возвраты

Ссылка на этот экземпляр после завершения операции вставки.A reference to this instance after the insert operation has completed.

Исключения

index имеет значение меньше нуля или больше длины этого экземпляра.index is less than zero or greater than the length of this instance.

-или--or- Увеличение значения этого экземпляра может привести к превышению MaxCapacity.Enlarging the value of this instance would exceed MaxCapacity.

Примеры

В следующем примере демонстрируется Insert метод.The following example demonstrates the Insert method.

using namespace System;
using namespace System::Text;
ref class Sample
{
private:

   //                           index: 012345
   static String^ initialValue = "--[]--";
   static StringBuilder^ sb;

public:
   static void Main()
   {
      String^ xyz = "xyz";
      array<Char>^abc = {'a','b','c'};
      Char star = '*';
      Object^ obj = 0;
      bool xBool = true;
      Byte xByte = 1;
      short xInt16 = 2;
      int xInt32 = 3;
      long xInt64 = 4;
      Decimal xDecimal = 5;
      float xSingle = 6.6F;
      double xDouble = 7.7;
      
      // The following types are not CLS-compliant.
      UInt16 xUInt16 = 8;
      UInt32 xUInt32 = 9;
      UInt64 xUInt64 = 10;
      SByte xSByte = -11;
      
      //
      Console::WriteLine( "StringBuilder.Insert method" );
      sb = gcnew StringBuilder( initialValue );
      sb->Insert( 3, xyz, 2 );
      Show( 1, sb );
      sb->Insert( 3, xyz );
      Show( 2, sb );
      sb->Insert( 3, star );
      Show( 3, sb );
      sb->Insert( 3, abc );
      Show( 4, sb );
      sb->Insert( 3, abc, 1, 2 );
      Show( 5, sb );
      sb->Insert( 3, xBool ); // True
      Show( 6, sb );
      sb->Insert( 3, obj ); // 0
      Show( 7, sb );
      sb->Insert( 3, xByte ); // 1
      Show( 8, sb );
      sb->Insert( 3, xInt16 ); // 2
      Show( 9, sb );
      sb->Insert( 3, xInt32 ); // 3
      Show( 10, sb );
      sb->Insert( 3, xInt64 ); // 4
      Show( 11, sb );
      sb->Insert( 3, xDecimal ); // 5
      Show( 12, sb );
      sb->Insert( 3, xSingle ); // 6.6
      Show( 13, sb );
      sb->Insert( 3, xDouble ); // 7.7
      Show( 14, sb );
      
      // The following Insert methods are not CLS-compliant.
      sb->Insert( 3, xUInt16 ); // 8
      Show( 15, sb );
      sb->Insert( 3, xUInt32 ); // 9
      Show( 16, sb );
      sb->Insert( 3, xUInt64 ); // 10
      Show( 17, sb );
      sb->Insert( 3, xSByte ); // -11
      Show( 18, sb );
      
      //
   }

   static void Show( int overloadNumber, StringBuilder^ sbs )
   {
      Console::WriteLine( "{0,2:G} = {1}", overloadNumber, sbs );
      sb = gcnew StringBuilder( initialValue );
   }

};

int main()
{
   Sample::Main();
}

/*
This example produces the following results:

StringBuilder.Insert method
 1 = --[xyzxyz]--
 2 = --[xyz]--
 3 = --[*]--
 4 = --[abc]--
 5 = --[bc]--
 6 = --[True]--
 7 = --[0]--
 8 = --[1]--
 9 = --[2]--
10 = --[3]--
11 = --[4]--
12 = --[5]--
13 = --[6.6]--
14 = --[7.7]--
15 = --[8]--
16 = --[9]--
17 = --[10]--
18 = --[-11]--

*/
using System;
using System.Text;

class Sample 
{
//                         index: 012345
    static string initialValue = "--[]--";
    static StringBuilder sb;

    public static void Main() 
    {
    string      xyz       = "xyz";
    char[]      abc       = {'a', 'b', 'c'};
    char        star      = '*';
    Object 	obj       = 0;

    bool        xBool     = true;
    byte        xByte     = 1;
    short       xInt16    = 2;
    int         xInt32    = 3;
    long        xInt64    = 4;
    Decimal     xDecimal  = 5;
    float       xSingle   = 6.6F;
    double      xDouble   = 7.7;

// The following types are not CLS-compliant.
    ushort      xUInt16   = 8;
    uint        xUInt32   = 9;
    ulong       xUInt64   = 10;
    sbyte       xSByte    = -11;
//
    Console.WriteLine("StringBuilder.Insert method");
    sb = new StringBuilder(initialValue);

    sb.Insert(3, xyz, 2);
    Show(1, sb);

    sb.Insert(3, xyz);
    Show(2, sb);

    sb.Insert(3, star);
    Show(3, sb);

    sb.Insert(3, abc);
    Show(4, sb);

    sb.Insert(3, abc, 1, 2);
    Show(5, sb);

    sb.Insert(3, xBool);     // True
    Show(6, sb);

    sb.Insert(3, obj);       // 0
    Show(7, sb);

    sb.Insert(3, xByte);     // 1
    Show(8, sb);

    sb.Insert(3, xInt16);    // 2
    Show(9, sb);

    sb.Insert(3, xInt32);    // 3
    Show(10, sb);

    sb.Insert(3, xInt64);    // 4
    Show(11, sb);

    sb.Insert(3, xDecimal);  // 5
    Show(12, sb);

    sb.Insert(3, xSingle);   // 6.6
    Show(13, sb);

    sb.Insert(3, xDouble);   // 7.7
    Show(14, sb);

// The following Insert methods are not CLS-compliant.
    sb.Insert(3, xUInt16);   // 8
    Show(15, sb);

    sb.Insert(3, xUInt32);   // 9
    Show(16, sb);

    sb.Insert(3, xUInt64);   // 10
    Show(17, sb);

    sb.Insert(3, xSByte);    // -11
    Show(18, sb);
//
    }

    public static void Show(int overloadNumber, StringBuilder sbs)
    {
    Console.WriteLine("{0,2:G} = {1}", overloadNumber, sbs.ToString());
    sb = new StringBuilder(initialValue);
    }
}
/*
This example produces the following results:

StringBuilder.Insert method
 1 = --[xyzxyz]--
 2 = --[xyz]--
 3 = --[*]--
 4 = --[abc]--
 5 = --[bc]--
 6 = --[True]--
 7 = --[0]--
 8 = --[1]--
 9 = --[2]--
10 = --[3]--
11 = --[4]--
12 = --[5]--
13 = --[6.6]--
14 = --[7.7]--
15 = --[8]--
16 = --[9]--
17 = --[10]--
18 = --[-11]--

*/
Imports System
Imports System.Text

Class Sample
   '                                 index: 012345
   Private Shared initialValue As String = "--[]--"
   Private Shared sb As StringBuilder
   
   Public Shared Sub Main()
      Dim xyz As String = "xyz"
      Dim abc As Char() =  {"a"c, "b"c, "c"c}
      Dim star As Char = "*"c
      Dim obj As [Object] = 0
      
      Dim xBool As Boolean = True
      Dim xByte As Byte = 1
      Dim xInt16 As Short = 2
      Dim xInt32 As Integer = 3
      Dim xInt64 As Long = 4
      Dim xDecimal As [Decimal] = 5
      Dim xSingle As Single = 6.6F
      Dim xDouble As Double = 7.7
      
      ' The following types are not CLS-compliant.
      ' Dim xUInt16 As System.UInt16 = 8 
      ' Dim xUInt32 As System.UInt32 = 9
      ' Dim xUInt64 As System.UInt64 = 10 
      ' Dim xSByte As System.SByte = - 11
      '
      Console.WriteLine("StringBuilder.Insert method")
      sb = New StringBuilder(initialValue)
      
      sb.Insert(3, xyz, 2)
      Show(1, sb)
      
      sb.Insert(3, xyz)
      Show(2, sb)
      
      sb.Insert(3, star)
      Show(3, sb)
      
      sb.Insert(3, abc)
      Show(4, sb)
      
      sb.Insert(3, abc, 1, 2)
      Show(5, sb)
      
      sb.Insert(3, xBool)     ' True
      Show(6, sb)
      
      sb.Insert(3, obj)       ' 0
      Show(7, sb)
      
      sb.Insert(3, xByte)     ' 1
      Show(8, sb)
      
      sb.Insert(3, xInt16)    ' 2
      Show(9, sb)
      
      sb.Insert(3, xInt32)    ' 3
      Show(10, sb)
      
      sb.Insert(3, xInt64)    ' 4
      Show(11, sb)
      
      sb.Insert(3, xDecimal)  ' 5
      Show(12, sb)
      
      sb.Insert(3, xSingle)   ' 6.6
      Show(13, sb)
      
      sb.Insert(3, xDouble)   ' 7.7
      Show(14, sb)
      
      ' The following Insert methods are not CLS-compliant.
      ' sb.Insert(3, xUInt16) ' 8
      ' sb.Insert(3, xUInt32) ' 9
      ' sb.Insert(3, xUInt64) ' 10
      ' sb.Insert(3, xSByte)  ' -11

   End Sub 'Main
   
   Public Shared Sub Show(overloadNumber As Integer, sbs As StringBuilder)
      Console.WriteLine("{0,2:G} = {1}", overloadNumber, sbs.ToString())
      sb = New StringBuilder(initialValue)
   End Sub 'Show
End Class 'Sample
'
'This example produces the following results:
'
'StringBuilder.Insert method
' 1 = --[xyzxyz]--
' 2 = --[xyz]--
' 3 = --[*]--
' 4 = --[abc]--
' 5 = --[bc]--
' 6 = --[True]--
' 7 = --[0]--
' 8 = --[1]--
' 9 = --[2]--
'10 = --[3]--
'11 = --[4]--
'12 = --[5]--
'13 = --[6.6]--
'14 = --[7.7]--
'

Комментарии

Char.ToString используется для получения строкового представления value.Char.ToString is used to get a string representation of value. Существующие символы сдвигаются, чтобы освободить место для нового текста.Existing characters are shifted to make room for the new text. При необходимости корректируется емкость данного экземпляра.The capacity of this instance is adjusted as needed.

Дополнительно

Insert(Int32, Byte) Insert(Int32, Byte) Insert(Int32, Byte) Insert(Int32, Byte)

Вставляет строковое представление указанного 8-разрядного целого числа без знака в данный экземпляр на указанную позицию символа.Inserts the string representation of a specified 8-bit unsigned integer into this instance at the specified character position.

public:
 System::Text::StringBuilder ^ Insert(int index, System::Byte value);
public System.Text.StringBuilder Insert (int index, byte value);
member this.Insert : int * byte -> System.Text.StringBuilder
Public Function Insert (index As Integer, value As Byte) As StringBuilder

Параметры

index
Int32 Int32 Int32 Int32

Позиция в данном экземпляре, с которой начинается вставка.The position in this instance where insertion begins.

value
Byte Byte Byte Byte

Значение, которое следует вставить.The value to insert.

Возвраты

Ссылка на этот экземпляр после завершения операции вставки.A reference to this instance after the insert operation has completed.

Исключения

index имеет значение меньше нуля или больше длины этого экземпляра.index is less than zero or greater than the length of this instance.

Увеличение значения этого экземпляра может привести к превышению MaxCapacity.Enlarging the value of this instance would exceed MaxCapacity.

Примеры

В следующем примере демонстрируется Insert метод.The following example demonstrates the Insert method.

using namespace System;
using namespace System::Text;
ref class Sample
{
private:

   //                           index: 012345
   static String^ initialValue = "--[]--";
   static StringBuilder^ sb;

public:
   static void Main()
   {
      String^ xyz = "xyz";
      array<Char>^abc = {'a','b','c'};
      Char star = '*';
      Object^ obj = 0;
      bool xBool = true;
      Byte xByte = 1;
      short xInt16 = 2;
      int xInt32 = 3;
      long xInt64 = 4;
      Decimal xDecimal = 5;
      float xSingle = 6.6F;
      double xDouble = 7.7;
      
      // The following types are not CLS-compliant.
      UInt16 xUInt16 = 8;
      UInt32 xUInt32 = 9;
      UInt64 xUInt64 = 10;
      SByte xSByte = -11;
      
      //
      Console::WriteLine( "StringBuilder.Insert method" );
      sb = gcnew StringBuilder( initialValue );
      sb->Insert( 3, xyz, 2 );
      Show( 1, sb );
      sb->Insert( 3, xyz );
      Show( 2, sb );
      sb->Insert( 3, star );
      Show( 3, sb );
      sb->Insert( 3, abc );
      Show( 4, sb );
      sb->Insert( 3, abc, 1, 2 );
      Show( 5, sb );
      sb->Insert( 3, xBool ); // True
      Show( 6, sb );
      sb->Insert( 3, obj ); // 0
      Show( 7, sb );
      sb->Insert( 3, xByte ); // 1
      Show( 8, sb );
      sb->Insert( 3, xInt16 ); // 2
      Show( 9, sb );
      sb->Insert( 3, xInt32 ); // 3
      Show( 10, sb );
      sb->Insert( 3, xInt64 ); // 4
      Show( 11, sb );
      sb->Insert( 3, xDecimal ); // 5
      Show( 12, sb );
      sb->Insert( 3, xSingle ); // 6.6
      Show( 13, sb );
      sb->Insert( 3, xDouble ); // 7.7
      Show( 14, sb );
      
      // The following Insert methods are not CLS-compliant.
      sb->Insert( 3, xUInt16 ); // 8
      Show( 15, sb );
      sb->Insert( 3, xUInt32 ); // 9
      Show( 16, sb );
      sb->Insert( 3, xUInt64 ); // 10
      Show( 17, sb );
      sb->Insert( 3, xSByte ); // -11
      Show( 18, sb );
      
      //
   }

   static void Show( int overloadNumber, StringBuilder^ sbs )
   {
      Console::WriteLine( "{0,2:G} = {1}", overloadNumber, sbs );
      sb = gcnew StringBuilder( initialValue );
   }

};

int main()
{
   Sample::Main();
}

/*
This example produces the following results:

StringBuilder.Insert method
 1 = --[xyzxyz]--
 2 = --[xyz]--
 3 = --[*]--
 4 = --[abc]--
 5 = --[bc]--
 6 = --[True]--
 7 = --[0]--
 8 = --[1]--
 9 = --[2]--
10 = --[3]--
11 = --[4]--
12 = --[5]--
13 = --[6.6]--
14 = --[7.7]--
15 = --[8]--
16 = --[9]--
17 = --[10]--
18 = --[-11]--

*/
using System;
using System.Text;

class Sample 
{
//                         index: 012345
    static string initialValue = "--[]--";
    static StringBuilder sb;

    public static void Main() 
    {
    string      xyz       = "xyz";
    char[]      abc       = {'a', 'b', 'c'};
    char        star      = '*';
    Object 	obj       = 0;

    bool        xBool     = true;
    byte        xByte     = 1;
    short       xInt16    = 2;
    int         xInt32    = 3;
    long        xInt64    = 4;
    Decimal     xDecimal  = 5;
    float       xSingle   = 6.6F;
    double      xDouble   = 7.7;

// The following types are not CLS-compliant.
    ushort      xUInt16   = 8;
    uint        xUInt32   = 9;
    ulong       xUInt64   = 10;
    sbyte       xSByte    = -11;
//
    Console.WriteLine("StringBuilder.Insert method");
    sb = new StringBuilder(initialValue);

    sb.Insert(3, xyz, 2);
    Show(1, sb);

    sb.Insert(3, xyz);
    Show(2, sb);

    sb.Insert(3, star);
    Show(3, sb);

    sb.Insert(3, abc);
    Show(4, sb);

    sb.Insert(3, abc, 1, 2);
    Show(5, sb);

    sb.Insert(3, xBool);     // True
    Show(6, sb);

    sb.Insert(3, obj);       // 0
    Show(7, sb);

    sb.Insert(3, xByte);     // 1
    Show(8, sb);

    sb.Insert(3, xInt16);    // 2
    Show(9, sb);

    sb.Insert(3, xInt32);    // 3
    Show(10, sb);

    sb.Insert(3, xInt64);    // 4
    Show(11, sb);

    sb.Insert(3, xDecimal);  // 5
    Show(12, sb);

    sb.Insert(3, xSingle);   // 6.6
    Show(13, sb);

    sb.Insert(3, xDouble);   // 7.7
    Show(14, sb);

// The following Insert methods are not CLS-compliant.
    sb.Insert(3, xUInt16);   // 8
    Show(15, sb);

    sb.Insert(3, xUInt32);   // 9
    Show(16, sb);

    sb.Insert(3, xUInt64);   // 10
    Show(17, sb);

    sb.Insert(3, xSByte);    // -11
    Show(18, sb);
//
    }

    public static void Show(int overloadNumber, StringBuilder sbs)
    {
    Console.WriteLine("{0,2:G} = {1}", overloadNumber, sbs.ToString());
    sb = new StringBuilder(initialValue);
    }
}
/*
This example produces the following results:

StringBuilder.Insert method
 1 = --[xyzxyz]--
 2 = --[xyz]--
 3 = --[*]--
 4 = --[abc]--
 5 = --[bc]--
 6 = --[True]--
 7 = --[0]--
 8 = --[1]--
 9 = --[2]--
10 = --[3]--
11 = --[4]--
12 = --[5]--
13 = --[6.6]--
14 = --[7.7]--
15 = --[8]--
16 = --[9]--
17 = --[10]--
18 = --[-11]--

*/
Imports System
Imports System.Text

Class Sample
   '                                 index: 012345
   Private Shared initialValue As String = "--[]--"
   Private Shared sb As StringBuilder
   
   Public Shared Sub Main()
      Dim xyz As String = "xyz"
      Dim abc As Char() =  {"a"c, "b"c, "c"c}
      Dim star As Char = "*"c
      Dim obj As [Object] = 0
      
      Dim xBool As Boolean = True
      Dim xByte As Byte = 1
      Dim xInt16 As Short = 2
      Dim xInt32 As Integer = 3
      Dim xInt64 As Long = 4
      Dim xDecimal As [Decimal] = 5
      Dim xSingle As Single = 6.6F
      Dim xDouble As Double = 7.7
      
      ' The following types are not CLS-compliant.
      ' Dim xUInt16 As System.UInt16 = 8 
      ' Dim xUInt32 As System.UInt32 = 9
      ' Dim xUInt64 As System.UInt64 = 10 
      ' Dim xSByte As System.SByte = - 11
      '
      Console.WriteLine("StringBuilder.Insert method")
      sb = New StringBuilder(initialValue)
      
      sb.Insert(3, xyz, 2)
      Show(1, sb)
      
      sb.Insert(3, xyz)
      Show(2, sb)
      
      sb.Insert(3, star)
      Show(3, sb)
      
      sb.Insert(3, abc)
      Show(4, sb)
      
      sb.Insert(3, abc, 1, 2)
      Show(5, sb)
      
      sb.Insert(3, xBool)     ' True
      Show(6, sb)
      
      sb.Insert(3, obj)       ' 0
      Show(7, sb)
      
      sb.Insert(3, xByte)     ' 1
      Show(8, sb)
      
      sb.Insert(3, xInt16)    ' 2
      Show(9, sb)
      
      sb.Insert(3, xInt32)    ' 3
      Show(10, sb)
      
      sb.Insert(3, xInt64)    ' 4
      Show(11, sb)
      
      sb.Insert(3, xDecimal)  ' 5
      Show(12, sb)
      
      sb.Insert(3, xSingle)   ' 6.6
      Show(13, sb)
      
      sb.Insert(3, xDouble)   ' 7.7
      Show(14, sb)
      
      ' The following Insert methods are not CLS-compliant.
      ' sb.Insert(3, xUInt16) ' 8
      ' sb.Insert(3, xUInt32) ' 9
      ' sb.Insert(3, xUInt64) ' 10
      ' sb.Insert(3, xSByte)  ' -11

   End Sub 'Main
   
   Public Shared Sub Show(overloadNumber As Integer, sbs As StringBuilder)
      Console.WriteLine("{0,2:G} = {1}", overloadNumber, sbs.ToString())
      sb = New StringBuilder(initialValue)
   End Sub 'Show
End Class 'Sample
'
'This example produces the following results:
'
'StringBuilder.Insert method
' 1 = --[xyzxyz]--
' 2 = --[xyz]--
' 3 = --[*]--
' 4 = --[abc]--
' 5 = --[bc]--
' 6 = --[True]--
' 7 = --[0]--
' 8 = --[1]--
' 9 = --[2]--
'10 = --[3]--
'11 = --[4]--
'12 = --[5]--
'13 = --[6.6]--
'14 = --[7.7]--
'

Комментарии

Byte.ToString используется для получения строкового представления value.Byte.ToString is used to get a string representation of value. Существующие символы сдвигаются, чтобы освободить место для нового текста.Existing characters are shifted to make room for the new text. При необходимости корректируется емкость данного экземпляра.The capacity of this instance is adjusted as needed.

Примечания для тех, кто вызывает этот метод

В .NET Framework 3.5 с пакетом обновления 1 (SP1).NET Framework 3.5 Service Pack 1 и более ранних версий, вызовы этого метода вызвал ArgumentOutOfRangeException Если вставка value для перевода объекта общая длина превысит MaxCapacity.In the .NET Framework 3.5 с пакетом обновления 1 (SP1).NET Framework 3.5 Service Pack 1 and earlier versions, calls to this method threw an ArgumentOutOfRangeException if inserting value would cause the object's total length to exceed MaxCapacity. Начиная с .NET Framework 4.NET Framework 4, метод вызывает OutOfMemoryException.Starting with the .NET Framework 4.NET Framework 4, the method throws an OutOfMemoryException.

Дополнительно

Insert(Int32, Boolean) Insert(Int32, Boolean) Insert(Int32, Boolean) Insert(Int32, Boolean)

Вставляет строковое представление логического значения в данный экземпляр на указанную позицию символа.Inserts the string representation of a Boolean value into this instance at the specified character position.

public:
 System::Text::StringBuilder ^ Insert(int index, bool value);
public System.Text.StringBuilder Insert (int index, bool value);
member this.Insert : int * bool -> System.Text.StringBuilder
Public Function Insert (index As Integer, value As Boolean) As StringBuilder

Параметры

index
Int32 Int32 Int32 Int32

Позиция в данном экземпляре, с которой начинается вставка.The position in this instance where insertion begins.

value
Boolean Boolean Boolean Boolean

Значение, которое следует вставить.The value to insert.

Возвраты

Ссылка на этот экземпляр после завершения операции вставки.A reference to this instance after the insert operation has completed.

Исключения

index имеет значение меньше нуля или больше длины этого экземпляра.index is less than zero or greater than the length of this instance.

Увеличение значения этого экземпляра может привести к превышению MaxCapacity.Enlarging the value of this instance would exceed MaxCapacity.

Примеры

В следующем примере демонстрируется Insert метод.The following example demonstrates the Insert method.

using namespace System;
using namespace System::Text;
ref class Sample
{
private:

   //                           index: 012345
   static String^ initialValue = "--[]--";
   static StringBuilder^ sb;

public:
   static void Main()
   {
      String^ xyz = "xyz";
      array<Char>^abc = {'a','b','c'};
      Char star = '*';
      Object^ obj = 0;
      bool xBool = true;
      Byte xByte = 1;
      short xInt16 = 2;
      int xInt32 = 3;
      long xInt64 = 4;
      Decimal xDecimal = 5;
      float xSingle = 6.6F;
      double xDouble = 7.7;
      
      // The following types are not CLS-compliant.
      UInt16 xUInt16 = 8;
      UInt32 xUInt32 = 9;
      UInt64 xUInt64 = 10;
      SByte xSByte = -11;
      
      //
      Console::WriteLine( "StringBuilder.Insert method" );
      sb = gcnew StringBuilder( initialValue );
      sb->Insert( 3, xyz, 2 );
      Show( 1, sb );
      sb->Insert( 3, xyz );
      Show( 2, sb );
      sb->Insert( 3, star );
      Show( 3, sb );
      sb->Insert( 3, abc );
      Show( 4, sb );
      sb->Insert( 3, abc, 1, 2 );
      Show( 5, sb );
      sb->Insert( 3, xBool ); // True
      Show( 6, sb );
      sb->Insert( 3, obj ); // 0
      Show( 7, sb );
      sb->Insert( 3, xByte ); // 1
      Show( 8, sb );
      sb->Insert( 3, xInt16 ); // 2
      Show( 9, sb );
      sb->Insert( 3, xInt32 ); // 3
      Show( 10, sb );
      sb->Insert( 3, xInt64 ); // 4
      Show( 11, sb );
      sb->Insert( 3, xDecimal ); // 5
      Show( 12, sb );
      sb->Insert( 3, xSingle ); // 6.6
      Show( 13, sb );
      sb->Insert( 3, xDouble ); // 7.7
      Show( 14, sb );
      
      // The following Insert methods are not CLS-compliant.
      sb->Insert( 3, xUInt16 ); // 8
      Show( 15, sb );
      sb->Insert( 3, xUInt32 ); // 9
      Show( 16, sb );
      sb->Insert( 3, xUInt64 ); // 10
      Show( 17, sb );
      sb->Insert( 3, xSByte ); // -11
      Show( 18, sb );
      
      //
   }

   static void Show( int overloadNumber, StringBuilder^ sbs )
   {
      Console::WriteLine( "{0,2:G} = {1}", overloadNumber, sbs );
      sb = gcnew StringBuilder( initialValue );
   }

};

int main()
{
   Sample::Main();
}

/*
This example produces the following results:

StringBuilder.Insert method
 1 = --[xyzxyz]--
 2 = --[xyz]--
 3 = --[*]--
 4 = --[abc]--
 5 = --[bc]--
 6 = --[True]--
 7 = --[0]--
 8 = --[1]--
 9 = --[2]--
10 = --[3]--
11 = --[4]--
12 = --[5]--
13 = --[6.6]--
14 = --[7.7]--
15 = --[8]--
16 = --[9]--
17 = --[10]--
18 = --[-11]--

*/
using System;
using System.Text;

class Sample 
{
//                         index: 012345
    static string initialValue = "--[]--";
    static StringBuilder sb;

    public static void Main() 
    {
    string      xyz       = "xyz";
    char[]      abc       = {'a', 'b', 'c'};
    char        star      = '*';
    Object 	obj       = 0;

    bool        xBool     = true;
    byte        xByte     = 1;
    short       xInt16    = 2;
    int         xInt32    = 3;
    long        xInt64    = 4;
    Decimal     xDecimal  = 5;
    float       xSingle   = 6.6F;
    double      xDouble   = 7.7;

// The following types are not CLS-compliant.
    ushort      xUInt16   = 8;
    uint        xUInt32   = 9;
    ulong       xUInt64   = 10;
    sbyte       xSByte    = -11;
//
    Console.WriteLine("StringBuilder.Insert method");
    sb = new StringBuilder(initialValue);

    sb.Insert(3, xyz, 2);
    Show(1, sb);

    sb.Insert(3, xyz);
    Show(2, sb);

    sb.Insert(3, star);
    Show(3, sb);

    sb.Insert(3, abc);
    Show(4, sb);

    sb.Insert(3, abc, 1, 2);
    Show(5, sb);

    sb.Insert(3, xBool);     // True
    Show(6, sb);

    sb.Insert(3, obj);       // 0
    Show(7, sb);

    sb.Insert(3, xByte);     // 1
    Show(8, sb);

    sb.Insert(3, xInt16);    // 2
    Show(9, sb);

    sb.Insert(3, xInt32);    // 3
    Show(10, sb);

    sb.Insert(3, xInt64);    // 4
    Show(11, sb);

    sb.Insert(3, xDecimal);  // 5
    Show(12, sb);

    sb.Insert(3, xSingle);   // 6.6
    Show(13, sb);

    sb.Insert(3, xDouble);   // 7.7
    Show(14, sb);

// The following Insert methods are not CLS-compliant.
    sb.Insert(3, xUInt16);   // 8
    Show(15, sb);

    sb.Insert(3, xUInt32);   // 9
    Show(16, sb);

    sb.Insert(3, xUInt64);   // 10
    Show(17, sb);

    sb.Insert(3, xSByte);    // -11
    Show(18, sb);
//
    }

    public static void Show(int overloadNumber, StringBuilder sbs)
    {
    Console.WriteLine("{0,2:G} = {1}", overloadNumber, sbs.ToString());
    sb = new StringBuilder(initialValue);
    }
}
/*
This example produces the following results:

StringBuilder.Insert method
 1 = --[xyzxyz]--
 2 = --[xyz]--
 3 = --[*]--
 4 = --[abc]--
 5 = --[bc]--
 6 = --[True]--
 7 = --[0]--
 8 = --[1]--
 9 = --[2]--
10 = --[3]--
11 = --[4]--
12 = --[5]--
13 = --[6.6]--
14 = --[7.7]--
15 = --[8]--
16 = --[9]--
17 = --[10]--
18 = --[-11]--

*/
Imports System
Imports System.Text

Class Sample
   '                                 index: 012345
   Private Shared initialValue As String = "--[]--"
   Private Shared sb As StringBuilder
   
   Public Shared Sub Main()
      Dim xyz As String = "xyz"
      Dim abc As Char() =  {"a"c, "b"c, "c"c}
      Dim star As Char = "*"c
      Dim obj As [Object] = 0
      
      Dim xBool As Boolean = True
      Dim xByte As Byte = 1
      Dim xInt16 As Short = 2
      Dim xInt32 As Integer = 3
      Dim xInt64 As Long = 4
      Dim xDecimal As [Decimal] = 5
      Dim xSingle As Single = 6.6F
      Dim xDouble As Double = 7.7
      
      ' The following types are not CLS-compliant.
      ' Dim xUInt16 As System.UInt16 = 8 
      ' Dim xUInt32 As System.UInt32 = 9
      ' Dim xUInt64 As System.UInt64 = 10 
      ' Dim xSByte As System.SByte = - 11
      '
      Console.WriteLine("StringBuilder.Insert method")
      sb = New StringBuilder(initialValue)
      
      sb.Insert(3, xyz, 2)
      Show(1, sb)
      
      sb.Insert(3, xyz)
      Show(2, sb)
      
      sb.Insert(3, star)
      Show(3, sb)
      
      sb.Insert(3, abc)
      Show(4, sb)
      
      sb.Insert(3, abc, 1, 2)
      Show(5, sb)
      
      sb.Insert(3, xBool)     ' True
      Show(6, sb)
      
      sb.Insert(3, obj)       ' 0
      Show(7, sb)
      
      sb.Insert(3, xByte)     ' 1
      Show(8, sb)
      
      sb.Insert(3, xInt16)    ' 2
      Show(9, sb)
      
      sb.Insert(3, xInt32)    ' 3
      Show(10, sb)
      
      sb.Insert(3, xInt64)    ' 4
      Show(11, sb)
      
      sb.Insert(3, xDecimal)  ' 5
      Show(12, sb)
      
      sb.Insert(3, xSingle)   ' 6.6
      Show(13, sb)
      
      sb.Insert(3, xDouble)   ' 7.7
      Show(14, sb)
      
      ' The following Insert methods are not CLS-compliant.
      ' sb.Insert(3, xUInt16) ' 8
      ' sb.Insert(3, xUInt32) ' 9
      ' sb.Insert(3, xUInt64) ' 10
      ' sb.Insert(3, xSByte)  ' -11

   End Sub 'Main
   
   Public Shared Sub Show(overloadNumber As Integer, sbs As StringBuilder)
      Console.WriteLine("{0,2:G} = {1}", overloadNumber, sbs.ToString())
      sb = New StringBuilder(initialValue)
   End Sub 'Show
End Class 'Sample
'
'This example produces the following results:
'
'StringBuilder.Insert method
' 1 = --[xyzxyz]--
' 2 = --[xyz]--
' 3 = --[*]--
' 4 = --[abc]--
' 5 = --[bc]--
' 6 = --[True]--
' 7 = --[0]--
' 8 = --[1]--
' 9 = --[2]--
'10 = --[3]--
'11 = --[4]--
'12 = --[5]--
'13 = --[6.6]--
'14 = --[7.7]--
'

Комментарии

Boolean.ToString используется для получения строкового представления value.Boolean.ToString is used to get a string representation of value. Существующие символы сдвигаются, чтобы освободить место для нового текста.Existing characters are shifted to make room for the new text. Емкость настроена, при необходимости.The capacity is adjusted as needed.

Примечания для тех, кто вызывает этот метод

В .NET Framework 3.5 с пакетом обновления 1 (SP1).NET Framework 3.5 Service Pack 1 и более ранних версий, вызовы этого метода вызвал ArgumentOutOfRangeException Если вставка value для перевода объекта общая длина превысит MaxCapacity.In the .NET Framework 3.5 с пакетом обновления 1 (SP1).NET Framework 3.5 Service Pack 1 and earlier versions, calls to this method threw an ArgumentOutOfRangeException if inserting value would cause the object's total length to exceed MaxCapacity. Начиная с .NET Framework 4.NET Framework 4, метод вызывает OutOfMemoryException.Starting with the .NET Framework 4.NET Framework 4, the method throws an OutOfMemoryException.

Дополнительно

Insert(Int32, Object) Insert(Int32, Object) Insert(Int32, Object) Insert(Int32, Object)

Вставляет строковое представление объекта в данный экземпляр на указанную позицию символа.Inserts the string representation of an object into this instance at the specified character position.

public:
 System::Text::StringBuilder ^ Insert(int index, System::Object ^ value);
public System.Text.StringBuilder Insert (int index, object value);
member this.Insert : int * obj -> System.Text.StringBuilder
Public Function Insert (index As Integer, value As Object) As StringBuilder

Параметры

index
Int32 Int32 Int32 Int32

Позиция в данном экземпляре, с которой начинается вставка.The position in this instance where insertion begins.

value
Object Object Object Object

Объект для вставки или значение null.The object to insert, or null.

Возвраты

Ссылка на этот экземпляр после завершения операции вставки.A reference to this instance after the insert operation has completed.

Исключения

index имеет значение меньше нуля или больше длины этого экземпляра.index is less than zero or greater than the length of this instance.

Увеличение значения этого экземпляра может привести к превышению MaxCapacity.Enlarging the value of this instance would exceed MaxCapacity.

Примеры

В следующем примере демонстрируется Insert метод.The following example demonstrates the Insert method.

using namespace System;
using namespace System::Text;
ref class Sample
{
private:

   //                           index: 012345
   static String^ initialValue = "--[]--";
   static StringBuilder^ sb;

public:
   static void Main()
   {
      String^ xyz = "xyz";
      array<Char>^abc = {'a','b','c'};
      Char star = '*';
      Object^ obj = 0;
      bool xBool = true;
      Byte xByte = 1;
      short xInt16 = 2;
      int xInt32 = 3;
      long xInt64 = 4;
      Decimal xDecimal = 5;
      float xSingle = 6.6F;
      double xDouble = 7.7;
      
      // The following types are not CLS-compliant.
      UInt16 xUInt16 = 8;
      UInt32 xUInt32 = 9;
      UInt64 xUInt64 = 10;
      SByte xSByte = -11;
      
      //
      Console::WriteLine( "StringBuilder.Insert method" );
      sb = gcnew StringBuilder( initialValue );
      sb->Insert( 3, xyz, 2 );
      Show( 1, sb );
      sb->Insert( 3, xyz );
      Show( 2, sb );
      sb->Insert( 3, star );
      Show( 3, sb );
      sb->Insert( 3, abc );
      Show( 4, sb );
      sb->Insert( 3, abc, 1, 2 );
      Show( 5, sb );
      sb->Insert( 3, xBool ); // True
      Show( 6, sb );
      sb->Insert( 3, obj ); // 0
      Show( 7, sb );
      sb->Insert( 3, xByte ); // 1
      Show( 8, sb );
      sb->Insert( 3, xInt16 ); // 2
      Show( 9, sb );
      sb->Insert( 3, xInt32 ); // 3
      Show( 10, sb );
      sb->Insert( 3, xInt64 ); // 4
      Show( 11, sb );
      sb->Insert( 3, xDecimal ); // 5
      Show( 12, sb );
      sb->Insert( 3, xSingle ); // 6.6
      Show( 13, sb );
      sb->Insert( 3, xDouble ); // 7.7
      Show( 14, sb );
      
      // The following Insert methods are not CLS-compliant.
      sb->Insert( 3, xUInt16 ); // 8
      Show( 15, sb );
      sb->Insert( 3, xUInt32 ); // 9
      Show( 16, sb );
      sb->Insert( 3, xUInt64 ); // 10
      Show( 17, sb );
      sb->Insert( 3, xSByte ); // -11
      Show( 18, sb );
      
      //
   }

   static void Show( int overloadNumber, StringBuilder^ sbs )
   {
      Console::WriteLine( "{0,2:G} = {1}", overloadNumber, sbs );
      sb = gcnew StringBuilder( initialValue );
   }

};

int main()
{
   Sample::Main();
}

/*
This example produces the following results:

StringBuilder.Insert method
 1 = --[xyzxyz]--
 2 = --[xyz]--
 3 = --[*]--
 4 = --[abc]--
 5 = --[bc]--
 6 = --[True]--
 7 = --[0]--
 8 = --[1]--
 9 = --[2]--
10 = --[3]--
11 = --[4]--
12 = --[5]--
13 = --[6.6]--
14 = --[7.7]--
15 = --[8]--
16 = --[9]--
17 = --[10]--
18 = --[-11]--

*/
using System;
using System.Text;

class Sample 
{
//                         index: 012345
    static string initialValue = "--[]--";
    static StringBuilder sb;

    public static void Main() 
    {
    string      xyz       = "xyz";
    char[]      abc       = {'a', 'b', 'c'};
    char        star      = '*';
    Object 	obj       = 0;

    bool        xBool     = true;
    byte        xByte     = 1;
    short       xInt16    = 2;
    int         xInt32    = 3;
    long        xInt64    = 4;
    Decimal     xDecimal  = 5;
    float       xSingle   = 6.6F;
    double      xDouble   = 7.7;

// The following types are not CLS-compliant.
    ushort      xUInt16   = 8;
    uint        xUInt32   = 9;
    ulong       xUInt64   = 10;
    sbyte       xSByte    = -11;
//
    Console.WriteLine("StringBuilder.Insert method");
    sb = new StringBuilder(initialValue);

    sb.Insert(3, xyz, 2);
    Show(1, sb);

    sb.Insert(3, xyz);
    Show(2, sb);

    sb.Insert(3, star);
    Show(3, sb);

    sb.Insert(3, abc);
    Show(4, sb);

    sb.Insert(3, abc, 1, 2);
    Show(5, sb);

    sb.Insert(3, xBool);     // True
    Show(6, sb);

    sb.Insert(3, obj);       // 0
    Show(7, sb);

    sb.Insert(3, xByte);     // 1
    Show(8, sb);

    sb.Insert(3, xInt16);    // 2
    Show(9, sb);

    sb.Insert(3, xInt32);    // 3
    Show(10, sb);

    sb.Insert(3, xInt64);    // 4
    Show(11, sb);

    sb.Insert(3, xDecimal);  // 5
    Show(12, sb);

    sb.Insert(3, xSingle);   // 6.6
    Show(13, sb);

    sb.Insert(3, xDouble);   // 7.7
    Show(14, sb);

// The following Insert methods are not CLS-compliant.
    sb.Insert(3, xUInt16);   // 8
    Show(15, sb);

    sb.Insert(3, xUInt32);   // 9
    Show(16, sb);

    sb.Insert(3, xUInt64);   // 10
    Show(17, sb);

    sb.Insert(3, xSByte);    // -11
    Show(18, sb);
//
    }

    public static void Show(int overloadNumber, StringBuilder sbs)
    {
    Console.WriteLine("{0,2:G} = {1}", overloadNumber, sbs.ToString());
    sb = new StringBuilder(initialValue);
    }
}
/*
This example produces the following results:

StringBuilder.Insert method
 1 = --[xyzxyz]--
 2 = --[xyz]--
 3 = --[*]--
 4 = --[abc]--
 5 = --[bc]--
 6 = --[True]--
 7 = --[0]--
 8 = --[1]--
 9 = --[2]--
10 = --[3]--
11 = --[4]--
12 = --[5]--
13 = --[6.6]--
14 = --[7.7]--
15 = --[8]--
16 = --[9]--
17 = --[10]--
18 = --[-11]--

*/
Imports System
Imports System.Text

Class Sample
   '                                 index: 012345
   Private Shared initialValue As String = "--[]--"
   Private Shared sb As StringBuilder
   
   Public Shared Sub Main()
      Dim xyz As String = "xyz"
      Dim abc As Char() =  {"a"c, "b"c, "c"c}
      Dim star As Char = "*"c
      Dim obj As [Object] = 0
      
      Dim xBool As Boolean = True
      Dim xByte As Byte = 1
      Dim xInt16 As Short = 2
      Dim xInt32 As Integer = 3
      Dim xInt64 As Long = 4
      Dim xDecimal As [Decimal] = 5
      Dim xSingle As Single = 6.6F
      Dim xDouble As Double = 7.7
      
      ' The following types are not CLS-compliant.
      ' Dim xUInt16 As System.UInt16 = 8 
      ' Dim xUInt32 As System.UInt32 = 9
      ' Dim xUInt64 As System.UInt64 = 10 
      ' Dim xSByte As System.SByte = - 11
      '
      Console.WriteLine("StringBuilder.Insert method")
      sb = New StringBuilder(initialValue)
      
      sb.Insert(3, xyz, 2)
      Show(1, sb)
      
      sb.Insert(3, xyz)
      Show(2, sb)
      
      sb.Insert(3, star)
      Show(3, sb)
      
      sb.Insert(3, abc)
      Show(4, sb)
      
      sb.Insert(3, abc, 1, 2)
      Show(5, sb)
      
      sb.Insert(3, xBool)     ' True
      Show(6, sb)
      
      sb.Insert(3, obj)       ' 0
      Show(7, sb)
      
      sb.Insert(3, xByte)     ' 1
      Show(8, sb)
      
      sb.Insert(3, xInt16)    ' 2
      Show(9, sb)
      
      sb.Insert(3, xInt32)    ' 3
      Show(10, sb)
      
      sb.Insert(3, xInt64)    ' 4
      Show(11, sb)
      
      sb.Insert(3, xDecimal)  ' 5
      Show(12, sb)
      
      sb.Insert(3, xSingle)   ' 6.6
      Show(13, sb)
      
      sb.Insert(3, xDouble)   ' 7.7
      Show(14, sb)
      
      ' The following Insert methods are not CLS-compliant.
      ' sb.Insert(3, xUInt16) ' 8
      ' sb.Insert(3, xUInt32) ' 9
      ' sb.Insert(3, xUInt64) ' 10
      ' sb.Insert(3, xSByte)  ' -11

   End Sub 'Main
   
   Public Shared Sub Show(overloadNumber As Integer, sbs As StringBuilder)
      Console.WriteLine("{0,2:G} = {1}", overloadNumber, sbs.ToString())
      sb = New StringBuilder(initialValue)
   End Sub 'Show
End Class 'Sample
'
'This example produces the following results:
'
'StringBuilder.Insert method
' 1 = --[xyzxyz]--
' 2 = --[xyz]--
' 3 = --[*]--
' 4 = --[abc]--
' 5 = --[bc]--
' 6 = --[True]--
' 7 = --[0]--
' 8 = --[1]--
' 9 = --[2]--
'10 = --[3]--
'11 = --[4]--
'12 = --[5]--
'13 = --[6.6]--
'14 = --[7.7]--
'

Комментарии

Object.ToString используется для получения строкового представления value.Object.ToString is used to get a string representation of value. Существующие символы сдвигаются, чтобы освободить место для нового текста.Existing characters are shifted to make room for the new text. При необходимости корректируется емкость данного экземпляра.The capacity of this instance is adjusted as needed.

Если value является null, значение данного экземпляра остается неизменным.If value is null, the value of this instance is unchanged.

Примечания для тех, кто вызывает этот метод

В .NET Framework 3.5 с пакетом обновления 1 (SP1).NET Framework 3.5 Service Pack 1 и более ранних версий, вызовы этого метода вызвал ArgumentOutOfRangeException Если вставка value для перевода объекта общая длина превысит MaxCapacity.In the .NET Framework 3.5 с пакетом обновления 1 (SP1).NET Framework 3.5 Service Pack 1 and earlier versions, calls to this method threw an ArgumentOutOfRangeException if inserting value would cause the object's total length to exceed MaxCapacity. Начиная с .NET Framework 4.NET Framework 4, метод вызывает OutOfMemoryException.Starting with the .NET Framework 4.NET Framework 4, the method throws an OutOfMemoryException.

Дополнительно

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