in C #, wat is het verschil tussen \ N en \ r \ n?

In C #, wat is het verschil tussen \nen \r\n?


Antwoord 1, Autoriteit 100%

\nIS UNIX, \rIS MAC, \r\nIS WINDOWS.

Soms geeft het probleem, vooral bij het uitvoeren van Code Cross-platform. U kunt dit omzeilen met behulp van Environment.NewLine.

Raadpleeg wat Is het verschil tussen \ r, \ n en \ r \ n?! voor meer informatie. Happy Reading


Antwoord 2, Autoriteit 60%

Het verschil

Er zijn een paar tekens die een nieuwe regel kunnen aangeven. De gebruikelijke zijn deze twee:

* '\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).

Verschillende besturingssystemen behandelen newlines op een andere manier. Hier is een korte lijst met de meest voorkomende:

* DOS and Windows

Ze verwachten dat een nieuwe lijn de combinatie is van twee tekens, namelijk ‘\ r \ n’ (of 13 gevolgd door 10).

* Unix (and hence Linux as well)

Unix gebruikt een enkele ‘\ n’ om een ​​nieuwe regel aan te geven.

* Mac

MACS Gebruik een enkele '\r'.

genomen van hier


Antwoord 3, Autoriteit 18%

“\n” is slechts een regelinvoer (Unicode U+000A). Dit is meestal het Unix-regelscheidingsteken.

“\r\n” is een regelterugloop (Unicode U+000D) gevolgd door een regelinvoer (Unicode U+000A). Dit is meestal het Windows-regelscheidingsteken.


Antwoord 4, autoriteit 6%

\n = LF (Line Feed) // Gebruikt als een nieuw regelteken op Unix

\r = CR (Carriage Return) // Gebruikt als een nieuw regelteken op Mac

\r\n = CR + LF // Gebruikt als een nieuw regelteken in Windows

(char)13 = \r = CR

Environment.NewLine= een van de bovenstaande codes op basis van het besturingssysteem

// .NET biedt de Environment-klasse die veel gegevens levert op basis van besturingssystemen, dus als de toepassing op Windows is gebouwd en u CR + LF (“\n\r” in plaats van Environment.NewLine) als de nieuw regelteken in uw strings, en vervolgens maakt Microsoft een VM voor het uitvoeren van .NET-toepassingen in Unix, dan zal er een probleem zijn. Je moet dus altijd Environment.NewLine gebruiken als je een nieuw regelteken wilt.Nu hoef je je geen zorgen meer te maken over het besturingssysteem.


Antwoord 5, autoriteit 3%

Komt in principe neer op Windows-standaard: \r\n en Unix-gebaseerde systemen die gebruik maken van: \n

http://en.wikipedia.org/wiki/Newline


Antwoord 6

\n is het regeleinde dat wordt gebruikt door Unix(-achtige) systemen, \r\n wordt gebruikt door Windows. Dit heeft niets met C# te maken.


Antwoord 7

Het zijn gewoon \r\n and \nzijn varianten.

\r\nwordt gebruikt in vensters

\nwordt gebruikt in mac en linux


Antwoord 8

Het gaat erom hoe het besturingssysteem regeleinden herkent.

  • Windows-gebruiker \r\n
  • Mac-gebruiker \r
  • Linux gebruikt \n

Moraal: als je voor Windows ontwikkelt, blijf dan bij \r\n. Of nog beter, gebruik C#-tekenreeksfuncties om tekenreeksen aan te pakken die al rekening houden met regeleindes (WriteLine en dergelijke).

Other episodes