J'utilise Microsoft.VisualBasic.Fileio.TextFieldParser pour analyser un fichier CSV qui a été créé avec Excel 2003. L'analyseur fonctionne très bien, sauf qu'il convertit les valeurs ascii étendues en points d'interrogation! Donc, si le contenu du fichier était:Microsoft.VisualBasic.FileIO.TextFieldParser change ± Ascii 241 à? Ascii 63
± 3
Le TextFieldParser revient
? 3
J'ai essayé tous les encodages dans le package System.Text.Encoding sans succès. Je pensais que je l'avais avec UTF7 mais il laissait tomber d'autres caractères comme le remplacement du signe + avec un espace.
Toute aide serait grandement appréciée.
Il n'existe pas de 'ASCII 241'. La signification des octets 128-255 est définie par ** extensions de ** ASCII, et il y en a beaucoup. –
Avez-vous vérifié ce que le fichier est enregistré en tant que? Ouvrez-le dans le Bloc-notes et sélectionnez Enregistrer sous, il devrait y avoir une liste déroulante à partir de laquelle vous pouvez sélectionner l'encodage. Vérifiez ce qu'il y a, je soupçonne ANSI. Vous pouvez essayer de l'enregistrer en tant que UTF-8, puis le réexécuter dans votre application. – Pieter