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

Свойство NewLine

StreamWriter.NewLine по умолчанию равен Environment.NewLine - на разных ОС это "\n" или "\r\n". В примере проверяют writer.NewLine == "\n" || writer.NewLine == "\r\n". Явно задают "\n" для предсказуемого WriteLine.

Синтаксис

writer.NewLine = "\n"; string nl = writer.NewLine;

Пример

Давайте проверим, что NewLine - либо "\n", либо "\r\n":

using System; using System.IO; using System.Text; class Program { static void Main() { var ms = new MemoryStream(); using var writer = new StreamWriter( ms, new UTF8Encoding(false), 1024, leaveOpen: true); bool res = writer.NewLine == "\n" || writer.NewLine == "\r\n"; Console.WriteLine(res); } }

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

True

Пример

Давайте зададим "\n" и запишем строку:

using System; using System.IO; using System.Text; class Program { static void Main() { var ms = new MemoryStream(); using (var writer = new StreamWriter( ms, new UTF8Encoding(false), 1024, leaveOpen: true)) { writer.NewLine = "\n"; writer.WriteLine("abcde"); writer.Flush(); } ms.Position = 0; using var reader = new StreamReader(ms, Encoding.UTF8); string res = reader.ReadToEnd(); Console.WriteLine(res); } }

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

"abcde\n"

Пример

Давайте сравним с StringWriter:

using System; using System.IO; class Program { static void Main() { using var writer = new StringWriter(); writer.NewLine = "\n"; writer.WriteLine("abcde"); string res = writer.ToString(); Console.WriteLine(res); } }

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

"abcde\n"

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

  • метод WriteLine,
    который дописывает NewLine
  • метод ReadLine,
    который убирает конец строки
  • StreamWriter,
    класс, где объявлено свойство
  • MemoryStream,
    буфер для проверки байтов
← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить