dividir una cadena en nuevas líneas en .NET

Resuelto RCIX asked hace 15 años • 17 respuestas

Necesito dividir una cadena en nuevas líneas en .NET y la única forma que conozco de dividir cadenas es con el método Split . Sin embargo, eso no me permitirá dividir (fácilmente) en una nueva línea, entonces, ¿cuál es la mejor manera de hacerlo?

RCIX avatar Oct 10 '09 16:10 RCIX
Aceptado

Para dividir en una cadena necesitas usar la sobrecarga que toma una serie de cadenas:

string[] lines = theText.Split(
    new string[] { Environment.NewLine },
    StringSplitOptions.None
);

Editar:
si desea manejar diferentes tipos de saltos de línea en un texto, puede utilizar la capacidad de hacer coincidir más de una cadena. Esto se dividirá correctamente en cualquier tipo de salto de línea y conservará las líneas vacías y el espaciado en el texto:

string[] lines = theText.Split(
    new string[] { "\r\n", "\r", "\n" },
    StringSplitOptions.None
);
Guffa avatar Oct 10 '2009 09:10 Guffa

¿ Qué pasa con el uso de un StringReader?

using (System.IO.StringReader reader = new System.IO.StringReader(input)) {
    string line = reader.ReadLine();
}
Clément avatar Nov 14 '2012 01:11 Clément