Я хочу убедиться, что _content не заканчивается символом NewLine:
_content = sb.ToString().Trim(new char[] { Environment.NewLine });
но приведенный выше код не работает, поскольку Trim, похоже, не имеет перегруженного параметра для коллекции строк, только символы.
Как проще всего удалить Enivronment.Newline с конца строки?
Ответы:
Следующее работает для меня.
или
источник
.Trim()
удаляет\r\n
для меня (используя .NET 4.0).источник
Как насчет:
Это несколько неэффективно, если есть несколько символов новой строки, но это сработает.
В качестве альтернативы, если вы не против обрезки (скажем)
"\r\r\r\r"
или,"\n\n\n\n"
скорее, чем просто"\r\n\r\n\r\n"
:источник
Используйте Framework. Метод ReadLine () может сказать следующее:
Итак, следующее поможет
источник
Что о
источник
Это, конечно, удалит «\ r \ r \ r \ r», а также «\ n \ n \ n \ n» и другие комбинации. И в "средах", где NewLine отличается от "\ n \ r", вы можете получить странное поведение :-)
Но если вы можете смириться с этим, я считаю, что это наиболее эффективный способ удалить символы новой строки в конце строки.
источник
Как насчет только:
Это приведет к извлечению всех пробелов из конца строки - проблема только в том случае, если вы хотите сохранить пробелы, отличные от новой строки.
источник
В некотором смысле это не ответ, но самый простой способ обрезать новую строку в строке - это вообще не иметь новой строки в строке, убедившись, что ваш собственный код никогда не видит ее. То есть с помощью собственных функций, удаляющих новую строку. Многие методы stream и file / io не будут включать новую строку, если вы запрашиваете вывод построчно, хотя может потребоваться обернуть что-то в
System.IO.BufferedStream
.Такие вещи, как
System.IO.File.ReadAllLines
могут использоваться вместоSystem.IO.File.ReadAllText
большей части времени, иReadLine
могут использоваться вместо того,Read
когда вы работаете с правильным типом потока (например,BufferedStream
).источник
Как отметил Маркус, TrimEnd сейчас выполняет свою работу. Мне нужно было получить перевод строки и пробелы с обоих концов строки в среде Windows Phone 7.8. После погони за различными более сложными опциями моя проблема была решена с помощью только Trim () - успешно прошла следующие тесты
источник
Мне пришлось удалить новые строки по всему тексту. Итак, я использовал:
источник