Oui, je suis conscient que '\n'
écrit une nouvelle ligne sous UNIX alors que pour Windows , il y a la séquence de deux caractères: '\r\n'
. Tout cela est très bien en théorie, mais ma question est pourquoi ? Pourquoi le caractère de retour chariot est-il extra dans Windows? Si UNIX peut le faire dans \n
pourquoi cela prend-il deux caractères à Windows pour le faire?
Je lis le livre de David Beazley dans Python et il dit:
Par exemple, sous Windows, l'écriture du caractère '\ n' génère en réalité la séquence de deux caractères '\ r \ n' (et lors de la lecture du fichier, '\ r \ n' est traduit en un seul '\ n' personnage).
Pourquoi cet effort supplémentaire?
Je vais être honnête. Je connais la différence depuis longtemps, mais je n'ai jamais pris la peine de demander POURQUOI. J'espère qu'on y répond aujourd'hui.
Merci pour votre temps.
System.out.printf()
ou String.format()
), assurez-vous de les utiliser %n
comme CRLF à des fins de compatibilité avec les systèmes d’exploitation. \n
est obsolète.
\n\r
plusieurs fois. (Je pense que c'était quelque chose de NetWare.)
\r\n
. Il est également utilisé par la plupart des protocoles Internet textuels (tels que SMTP, HTTP, etc.) pour la même raison que Windows (historique).