How to find the Capacity of a StringBuilder in C#

Last Updated : 11 Jul, 2025

StringBuilder.Capacity Property is used to get or set the maximum number of characters that can be contained in the memory allocated by the current instance.
 

Syntax: public int Capacity { get; set; }
Return Value: This property will return the maximum number of characters that can be contained in the memory allocated by the current instance. Its value can range from Length to MaxCapacity.
Exception: This property will give ArgumentOutOfRangeException if the value specified for a set operation is less than the current length of this instance or the value specified for a set operation is greater than the maximum capacity. 
 


Below programs will illustrate the use of the above-discussed property:
Example 1:
 

csharp
// C# program to demonstrate
// the Capacity() Property
using System;
using System.Text;

class GFG {

    // Main Method
    public static void Main(String[] args)
    {

        // create a StringBuilder object,
        // default capacity will be 16
        StringBuilder str = new StringBuilder();

        // get default capacity
        int cap = str.Capacity;

        Console.WriteLine("Default Capacity of StringBuilder = "
                                                         + cap);

        // add the String to StringBuilder Object
        str.Append("Geek");

        // get capacity
        cap = str.Capacity;

        // print the result
        Console.WriteLine("StringBuilder = " + str);
        Console.WriteLine("Current Capacity of StringBuilder = "
                                                         + cap);
    }
}

Output: 
 Capacity of StringBuilder = 16
StringBuilder = Geek
Current Capacity of StringBuilder = 16

 

Example 2:
 

csharp
// C# program to demonstrate
// the Capacity() Property
using System;
using System.Text;

class GFG {
    public static void Main(String[] args)
    {

        // create a StringBuilder object
        // with a String passed as parameter
        StringBuilder str = 
           new StringBuilder("WelcomeGeeks");

        // get capacity
        int capacity = str.Capacity;

        // print the result
        Console.WriteLine("StringBuilder = " + str);
        Console.WriteLine("Capacity of StringBuilder = "
                                            + capacity);
    }
}

Output: 
StringBuilder = WelcomeGeeks
Capacity of StringBuilder = 16

 

Reference: 

Comment

Explore