Lors de la lecture des données du fichier d'entrée, j'ai remarqué que la bibliothèque StreamReader ne lisait pas la symbbe ¥. Mozilla Firefox a montré le type de fichier d'entrée comme Western (ISO-8859-1).Problème avec StreamReader - Codage de fichier inconnu (western iso 88591)
Après avoir joué avec les paramètres d'encodage je l'ai trouvé a travaillé avec succès pour les valeurs suivantes:
System.Text.Encoding.GetEncoding(1252) // (western iso 88591)
System.Text.Encoding.Default
System.Text.Encoding.UTF7
Maintenant, je comptais sur l'utilisation du paramètre « par défaut », mais je ne suis pas très sûr que ce soit la bonne décision. Le code existant n'utilisait aucun encodage et je crains de pouvoir casser quelque chose.
Je connais très peu (ou plutôt rien) à propos de l'encodage. Comment je vais à ce sujet? Ma décision d'utiliser System.Text.Encoding.Default est-elle sûre? Dois-je demander à l'utilisateur d'enregistrer les fichiers dans un format particulier?
de Joel Spolsky UTF-8 ne fonctionne pas pour moi malheureusement. Lire les articles .. "C'est un grand sujet." n'était pas exactement le début que j'espérais ;-) – Preets
UTF-8 ne fonctionnera pas si vous essayez de lire un fichier encodé en ISO-8859-1, non. Mais si vous pouvez persuader vos utilisateurs d'enregistrer en UTF-8 à la place, ce serait une victoire. –