В С#, если вы делаете что-то вроде string newLine = Environment.NewLine;
и проверяете значение newLine
, вы обнаружите, что это "\r\n"
. Однако, если я что-то типа:
string[] test = new string[] { "one", "two", "three" };
Console.WriteLine("With plain slash n:");
Console.Write(String.Join("\n", test));
Console.WriteLine("\nWith Environment.NewLine:");
Console.Write(String.Join(Environment.NewLine, test));
Вывод функционально одинаков.
Почему Environment.NewLine
установлен на \r\n
вместо \n
? Разве это не просто затрудняет преобразование из строки в массив символов? Также я прочитал что-то, что заставило меня поверить, что некоторые поля ввода не учитывают Environment.NewLine
как два символа, которые могут вызвать проблемы, если ваши поля поддержки ограничены длиной поля ввода. Есть ли для этого какие-то положительные причины? Это просто унаследованный рывок в этот момент?