Метод String.Replace (char, char) в C # - PullRequest
71 голосов
/ 16 марта 2009

Как заменить \n на пустое место?

Я получаю пустую буквальную ошибку, если я делаю это:

string temp = mystring.Replace('\n', '');

Ответы [ 12 ]

0 голосов
/ 16 марта 2009

@ gnomixa - Что вы имеете в виду в своем комментарии о том, что ничего не достигнуто? У меня в VS2005 работает следующее.

Если ваша цель - удалить символы новой строки, тем самым сократив строку, посмотрите на это:

        string originalStringWithNewline = "12\n345"; // length is 6
        System.Diagnostics.Debug.Assert(originalStringWithNewline.Length == 6);
        string newStringWithoutNewline = originalStringWithNewline.Replace("\n", ""); // new length is 5
        System.Diagnostics.Debug.Assert(newStringWithoutNewline.Length == 5);

Если ваша цель - заменить символы новой строки пробелом, оставив длину строки одинаковой, посмотрите на этот пример:

        string originalStringWithNewline = "12\n345"; // length is 6
        System.Diagnostics.Debug.Assert(originalStringWithNewline.Length == 6);
        string newStringWithoutNewline = originalStringWithNewline.Replace("\n", " "); // new length is still 6
        System.Diagnostics.Debug.Assert(newStringWithoutNewline.Length == 6);

И вы должны заменить односимвольные строки вместо символов, потому что '' не является допустимым символом, который будет передан в Replace (string, char)

0 голосов
/ 16 марта 2009
string temp = mystring.Replace("\n", " ");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...