How to find the Capacity of a StringBuilder in C#

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("WelcomeBeginner");
 
        // get capacity
        int capacity = str.Capacity;
 
        // print the result
        Console.WriteLine("StringBuilder = " + str);
        Console.WriteLine("Capacity of StringBuilder = "
                                            + capacity);
    }
}


Output: 

StringBuilder = WelcomeBeginner
Capacity of StringBuilder = 16

 

Reference: 

  • https://docs.microsoft.com/en-us/dotnet/api/system.text.stringbuilder.capacity?view=netframework-4.7.2


Contact Us