C: newline valeurs hexadécimales

J'ai un bout de code qui lit les lignes d'un fichier txt, et ne puis ajoute à une base de données.

Si vous tapez des données directement dans le fichier txt, alors c'est suffisant pour reconnaître un retour à la ligne: if (ch == '\n')

Toutefois, si vous coupez & coller de Word de Microsoft, la vérification de la \n ne fonctionne pas.

Si je dump sur les valeurs hex /caractères un par un, les données réelles ressemble à ceci:

2e .    [ Last char of line ]
 d 
58 X    [ First char on next line ]

L'arrêt complet est le dernier caractère d'une ligne. Le " X " est le premier caractère de la ligne suivante. L'hex 'd' provoque le retour à la ligne.

Ce qui se passe? Et comment puis-je tester mon ch variable contre > d<, étant donné que c'est l'espace-d dans l'hexagone?

Grâce.

Peut-être que les fichiers word utiliser \r\n comme un retour à la ligne, et la \r eu en quelque sorte corrompu par l'éditeur, vous collez le fichier dans. Ce que l'éditeur utilisez-vous pour créer le fichier txt?
Je suis l'aide de TextEdit sur Mac.
Merci, messieurs 🙂

OriginalL'auteur Nick | 2012-05-10