Vous n'êtes pas connecté - Connexion ou Créer un compte

Classée dans Questions > Questions / Réponses

Les sauts de lignes en informatique

Tags : aucun
Administrateur
Une annonce aurait pu être ici :'(

En informatique, le saut de ligne peut être représenté de plusieurs façons différentes. Cela dépend du système d'exploitation ou encore du type de fichier. En règle générale, le saut de ligne est représenté par deux caractères de contrôle distincts :

  • le retour chariot (CR, Carriage Return) : \r, ASCII 13 ou hexadécimal 0D
  • et la nouvelle ligne (LF, Line Feed) : \n, ASCII 10 ou hexadécimal 0A.

Les systèmes d'exploitation ont chacun leurs spécificités vis-à-vis de cette représentation. Les systèmes UNIX utiliseront plutôt le caractère de contrôle \n, alors que les systèmes DOS/Windows privilégieront la combinaison \r\n.

UNIX (Linux, OSX)LF : \n
Mac OS jusqu'à la version 9CR : \r
Windows, DOSCR+LF : \r\n

Problèmes et normalisation

La disparité de cette représentation d'un système à un autre entraîne des problèmes d'affichage lorsque l'on passe d'un système à un autre. Un fichier texte rédigé sous un système UNIX apparaîtra sur une ligne unique, sans saut de ligne, lorsqu'il sera visualisé sous un système Windows. À l'inverse, un fichier Windows pourra apparaître avec des caractères spéciaux tels que ^M ou <cr> ou avec des doubles sauts de ligne sur un système UNIX.

Afin de corriger ce problème qui est surtout problématique lorsque l'on souhaite réaliser un traitement informatique sur un fichier, il est possible de réaliser une étape de normalisation. Cela peut se faire via un remplacement des séquences \r\n par des séquences \n ou bien l'inverse.

Il est bien souvent possible de connaître le format de saut de ligne du système utilisé dans divers langages de programmation. Il existe également des outils permettant de convertir un fichier d'un format de saut de ligne à un autre.

0

Il n'est plus possible de répondre à cette question car elle marquée comme résolue.