Export (0) Print
Expand All

StringBuilder.Insert Method (Int32, String, Int32)

Updated: August 2009

Inserts one or more copies of a specified string into this instance at the specified character position.

Namespace:  System.Text
Assembly:  mscorlib (in mscorlib.dll)

'Declaration
<SecuritySafeCriticalAttribute> _
Public Function Insert ( _
	index As Integer, _
	value As String, _
	count As Integer _
) As StringBuilder

Parameters

index
Type: System.Int32
The position in this instance where insertion begins.
value
Type: System.String
The string to insert.
count
Type: System.Int32
The number of times to insert value.

Return Value

Type: System.Text.StringBuilder
A reference to this instance after insertion has completed.

ExceptionCondition
ArgumentOutOfRangeException

index is less than zero or greater than the current length of this instance.

-or-

count is less than zero.

OutOfMemoryException

The current length of this StringBuilder object plus the length of value times count exceeds the maximum capacity of this instance.

Existing characters are shifted to make room for the new text. The capacity of this instance is adjusted as needed.

This StringBuilder object is not changed if value is Nothing, value is not Nothing but its length is zero, or count is zero.

The following code example demonstrates the Insert method.


Imports System.Text

Class Example
   '                                 index: 012345
   Private Shared initialValue As String = "--[]--"
   Private Shared sb As StringBuilder

   Public Shared Sub Demo(ByVal outputBlock As System.Windows.Controls.TextBlock)
      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
      '
      outputBlock.Text &= "StringBuilder.Insert method" & vbCrLf
      sb = New StringBuilder(initialValue)

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

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

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

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

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

      sb.Insert(3, xBool)     ' True
      Show(outputBlock, 6, sb)

      sb.Insert(3, obj)       ' 0
      Show(outputBlock, 7, sb)

      sb.Insert(3, xByte)     ' 1
      Show(outputBlock, 8, sb)

      sb.Insert(3, xInt16)    ' 2
      Show(outputBlock, 9, sb)

      sb.Insert(3, xInt32)    ' 3
      Show(outputBlock, 10, sb)

      sb.Insert(3, xInt64)    ' 4
      Show(outputBlock, 11, sb)

      sb.Insert(3, xDecimal)  ' 5
      Show(outputBlock, 12, sb)

      sb.Insert(3, xSingle)   ' 6.6
      Show(outputBlock, 13, sb)

      sb.Insert(3, xDouble)   ' 7.7
      Show(outputBlock, 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(ByVal outputBlock As System.Windows.Controls.TextBlock, ByVal overloadNumber As Integer, ByVal sbs As StringBuilder)
      outputBlock.Text += String.Format("{0,2:G} = {1}", overloadNumber, sbs.ToString()) & vbCrLf
      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]--
'


Silverlight

Supported in: 5, 4, 3

Silverlight for Windows Phone

Supported in: Windows Phone OS 7.1, Windows Phone OS 7.0

XNA Framework

Supported in: Xbox 360, Windows Phone OS 7.0

For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.

Date

History

Reason

August 2009

Updated exception information.

Content bug fix.

Community Additions

ADD
Show:
© 2014 Microsoft