Создаем портфолио за 1 месяц
К концу месяца: 4 классных проекта в вашем портфолио! Стоимость: 100$. Подробности...
341 of 1492 menu
◀ ▶

Класс StringBuilder

Класс StringBuilder из пространства имён System.Text хранит изменяемый буфер символов. В отличие от типа string, содержимое буфера меняют на месте: дописывают, вставляют и вырезают фрагменты без создания новой строки на каждом шаге. Объект создают конструктором без параметров, с начальной строкой "abcde" или с числом - желаемым запасом буфера.

Синтаксис

StringBuilder sb = new StringBuilder(); StringBuilder sb = new StringBuilder("abcde"); StringBuilder sb = new StringBuilder(32);

Пример

Давайте соберём текст методом Append и получим строку через ToString:

using System; using System.Text; class Program { static void Main() { StringBuilder sb = new StringBuilder("abc"); sb.Append("de"); Console.WriteLine(sb.ToString()); } }

Результат выполнения кода:

"abcde"

Пример

Давайте изменим символ через индексатор и допишем ещё текст цепочкой вызовов:

using System; using System.Text; class Program { static void Main() { StringBuilder sb = new StringBuilder("abcde"); sb[0] = 'z'; sb.Append("12345").Append('!'); Console.WriteLine(sb.ToString()); } }

Результат выполнения кода:

"zbcde12345!"

Пример

Давайте вставим фрагмент в середину буфера методом Insert:

using System; using System.Text; class Program { static void Main() { StringBuilder sb = new StringBuilder("abcde"); sb.Insert(2, "12345"); Console.WriteLine(sb.ToString()); } }

Результат выполнения кода:

"ab12345cde"

Пример

Давайте вырежем часть буфера и заменим остаток другим текстом:

using System; using System.Text; class Program { static void Main() { StringBuilder sb = new StringBuilder("abcde"); sb.Remove(1, 3); sb.Replace("e", "12345"); Console.WriteLine(sb.ToString()); } }

Результат выполнения кода:

"a12345"

Смотрите также

  • метод Append,
    который дописывает данные в конец буфера
  • свойство Length,
    которое задаёт текущую длину текста в буфере
  • метод ToString,
    который возвращает собранную строку
  • метод Clear,
    который очищает текст, оставляя буфер
← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить