StringBuilder.Append Method (String, Int32, Int32)

Updated: January 2011

Appends a copy of a specified substring to the end of this instance.

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

Syntax

'Declaration
<SecuritySafeCriticalAttribute> _
Public Function Append ( _
    value As String, _
    startIndex As Integer, _
    count As Integer _
) As StringBuilder
[SecuritySafeCriticalAttribute]
public StringBuilder Append(
    string value,
    int startIndex,
    int count
)

Parameters

  • startIndex
    Type: System.Int32
    The starting position of the substring within value.
  • count
    Type: System.Int32
    The number of characters in value to append.

Return Value

Type: System.Text.StringBuilder
A reference to this instance after the append operation has completed.

Exceptions

Exception Condition
ArgumentNullException

value is nulla null reference (Nothing in Visual Basic), and startIndex and count are not zero.

ArgumentOutOfRangeException

count less than zero.

-or-

startIndex less than zero.

-or-

startIndex + count is greater than the length of value.

-or-

Enlarging the value of this instance would exceed its maximum capacity.

Remarks

This method appends the specified range of characters in value to the current instance. If value is nulla null reference (Nothing in Visual Basic) and startIndex and count are both zero, no changes are made.

The Append method modifies the existing instance of this class; it does not return a new class instance. Because of this, you can call a method or property on the existing reference and you do not have to assign the return value to a StringBuilder object, as the following example illustrates.

Dim str As String = "First;George Washington;1789;1797"
Dim index As Integer = 0
Dim sb As New System.Text.StringBuilder()
Dim length As Integer = str.IndexOf(";"c, index)      
sb.Append(str, index, length).Append(" President of the United States: ")
index += length + 1
length = str.IndexOf(";"c, index) - index
sb.Append(str, index, length).Append(", from ")
index += length + 1
length = str.IndexOf(";"c, index) - index
sb.Append(str, index, length).Append(" to ")
index += length + 1
sb.Append(str, index, str.Length - index)
outputBlock.Text += sb.ToString() + vbCrLf
' The example displays the following output:
'    First President of the United States: George Washington, from 1789 to 1797      
string str = "First;George Washington;1789;1797";
int index = 0;
System.Text.StringBuilder sb = new System.Text.StringBuilder();
int length = str.IndexOf(';', index);      
sb.Append(str, index, length).Append(" President of the United States: ");
index += length + 1;
length = str.IndexOf(';', index) - index;
sb.Append(str, index, length).Append(", from ");
index += length + 1;
length = str.IndexOf(';', index) - index;
sb.Append(str, index, length).Append(" to ");
index += length + 1;
sb.Append(str, index, str.Length - index);
outputBlock.Text += sb.ToString() + Environment.NewLine;
// The example displays the following output:
//    First President of the United States: George Washington, from 1789 to 1797      

The capacity of this instance is adjusted as needed.

Version Information

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

Platforms

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

Change History

Date

History

Reason

January 2011

Expanded the Remarks section and removed the example.

Customer feedback.