videojuegos para new mejor entre diferencia cual constant c# newline linefeed carriage-return

para - En C#, ¿cuál es la diferencia entre / n y / r / n?



environment.newline c# (9)

Según el tema ...


La diferencia

Hay algunos caracteres que pueden indicar una nueva línea. Los habituales son estos dos:

* ''/n'' or ''0x0A'' (10 in decimal) -> This character is called "Line Feed" (LF). * ''/r'' or ''0x0D'' (13 in decimal) -> This one is called "Carriage return" (CR).

Diferentes sistemas operativos manejan las nuevas líneas de una manera diferente. Aquí hay una breve lista de las más comunes:

* DOS and Windows

Esperan que una nueva línea sea la combinación de dos caracteres, a saber, ''/ r / n'' (o 13 seguidos de 10).

* Unix (and hence Linux as well)

Unix usa un solo ''/ n'' para indicar una nueva línea.

* Mac

Las Mac usan un solo ''/r'' .

Tomado de Here


"/ n" es solo un avance de línea (Unicode U + 000A). Esto suele ser el separador de línea Unix.

"/ r / n" es un retorno de carro (Unicode U + 000D) seguido de un salto de línea (Unicode U + 000A). Esto suele ser el separador de línea de Windows.



Se trata de cómo el sistema operativo reconoce la línea termina.

  • usuario de Windows / r / n
  • usuario de mac
  • usos de linux / n

Moral: si está desarrollando para Windows, quédese en / r / n. O incluso mejor, use las funciones de cadena de C # para lidiar con cadenas que ya consideran finales de línea (WriteLine, y demás).


Son solo /r/n and /n son variantes.

/r/n se utiliza en windows

/n se usa en mac y linux


Utilice Environment.NewLine y no importa.


/ n = LF (Avance de línea) // Se utiliza como un nuevo carácter de línea en Unix

/ r = CR (retorno de carro) // Se utiliza como un nuevo carácter de línea en Mac

/ r / n = CR + LF // Se usa como un nuevo carácter de línea en Windows

(char) 13 = / r = CR

Environment.NewLine = cualquiera de los códigos anteriores basado en el sistema operativo

// .Net proporciona la clase de entorno que proporciona muchos datos basados ​​en sistemas operativos, por lo que si la aplicación está integrada en Windows y utiliza CR + LF ("/ n / r" en lugar de Environment.NewLine) como nuevo carácter de línea en sus cadenas, y luego MS crea una máquina virtual para ejecutar aplicaciones .Net en Unix, entonces habrá un problema. Por lo tanto, siempre debe usar Environment.NewLine cuando desee un nuevo carácter de línea. Ahora no necesitas preocuparte por el sistema operativo.


/ n es el salto de línea utilizado por los sistemas Unix (-like), / r / n es usado por windows. Esto no tiene nada que ver con C #.


/n es Unix, /r es Mac, /r/n es Windows.

A veces da problemas, especialmente cuando se ejecuta código multiplataforma. Puede omitir esto utilizando Environment.NewLine .

Consulte ¿Cuál es la diferencia entre / r, / n y / r / n? para más información. Feliz lectura