Метод ToString
Метод ToString класса StringBuilder
создаёт строку типа string
по содержимому буфера. Сам StringBuilder
при этом не очищается. Без параметров
возвращают весь текст. Перегрузка с
startIndex и length
возвращает только указанный фрагмент.
Синтаксис
string text = sb.ToString();
string part = sb.ToString(startIndex, length);
Пример
Давайте получим строку из буфера
"abcde":
using System;
using System.Text;
class Program
{
static void Main()
{
StringBuilder sb = new StringBuilder("abcde");
string res = sb.ToString();
Console.WriteLine(res);
}
}
Результат выполнения кода:
"abcde"
Пример
Давайте вырежем фрагмент через перегрузку
ToString с позицией и длиной:
using System;
using System.Text;
class Program
{
static void Main()
{
StringBuilder sb = new StringBuilder("abcde");
string res = sb.ToString(1, 3);
Console.WriteLine(res);
}
}
Результат выполнения кода:
"bcd"
Пример
Давайте изменим буфер после вызова
ToString и снова прочитаем текст:
using System;
using System.Text;
class Program
{
static void Main()
{
StringBuilder sb = new StringBuilder("abcde");
string first = sb.ToString();
sb.Append("12345");
string second = sb.ToString();
Console.WriteLine(first);
Console.WriteLine(second);
}
}
Результат выполнения кода:
"abcde"
"abcde12345"
Пример
Давайте соберём текст через Append
и выведем итоговую строку:
using System;
using System.Text;
class Program
{
static void Main()
{
StringBuilder sb = new StringBuilder();
sb.Append("abc").Append("de");
Console.WriteLine(sb.ToString());
}
}
Результат выполнения кода:
"abcde"