У меня есть строка.
string strToProcess = "fkdfdsfdflkdkfk@dfsdfjk72388389@kdkfkdfkkl@jkdjkfjd@jjjk@";
Мне нужно добавить новую строку после каждого вхождения символа "@" в строке.
Мой вывод должен быть таким
fkdfdsfdflkdkfk@
dfsdfjk72388389@
kdkfkdfkkl@
jkdjkfjd@
jjjk@
Ответы:
Используйте
Environment.NewLine
всякий раз, когда вы хотите в любой строке. Пример:источник
string
) является неизменным объектом, что означает, что копируется вся строка. Лучше использовать объект System.Text.StringBuilder для таких операций, как String.Replace.Вы можете добавить символ новой строки после символа @ следующим образом:
Вы также можете использовать
NewLine
свойство вEnvironment
классе (я думаю, что это среда).источник
Предыдущие ответы близки, но для удовлетворения фактического требования, чтобы
@
символ оставался близко, вы бы хотели, чтобы это былоstr.Replace("@", "@" + System.Environment.NewLine)
. Это сохранит@
символ и добавит соответствующие символы новой строки для текущей платформы.источник
Затем просто измените предыдущие ответы на:
Если вам не нужны переводы строк в текстовом файле, не сохраняйте его.
источник
Простая замена строки сделает работу. Посмотрите на пример программы ниже:
источник
Как уже говорили другие, новая строка char даст вам новую строку в текстовом файле в Windows. попробуйте следующее:
источник
Исходя из ваших ответов всем остальным, что-то вроде этого - то, что вы ищете.
источник
источник
Вывод
источник
Вы также можете использовать
string[] something = text.Split('@')
. Убедитесь, что вы используете одинарные кавычки, чтобы заключить их в «@»char
. Это будет хранить символы вплоть до каждого «@» как отдельные слова в массиве. Затем вы можете вывести каждое (element + System.Environment.NewLine
) с помощью цикла for или записать его в текстовый файл с помощьюSystem.IO.File.WriteAllLines([file path + name and extension], [array name])
. Если указанный файл не существует в этом месте, он будет создан автоматически.источник
источник
источник