Lecture fichier CSV : caractère é è ë ê à,... effacés

Résolu
Stingray_fr_88 Messages postés 5 Date d'inscription jeudi 26 mai 2005 Statut Membre Dernière intervention 23 mars 2006 - 4 févr. 2006 à 00:42
cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 - 12 juin 2006 à 20:05
je n'arrive pas à lire un fichier csv les caractères spéciaux disparaissent comme les é è ë ê à,...

voici mon code :

System.IO.StreamReader sr = System.IO.File.OpenText(file);
string line = sr.ReadLine();

Si vous avez la solution, merci d'avance.

5 réponses

cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
4 févr. 2006 à 08:19
Salut,

OpenText ouvre le fichier avec le codage UTF8.
Essaie plutôt de passer par un des constructeurs de StreamReader qui permet de spécifier le codage.

/*
coq
MVP Visual C#
*/
3
Stingray_fr_88 Messages postés 5 Date d'inscription jeudi 26 mai 2005 Statut Membre Dernière intervention 23 mars 2006
4 févr. 2006 à 18:58
Ok ça marche avec le code suivant :

System.IO.StreamReader sr = new System.IO.StreamReader(file,System.Text.Encoding.UTF7);

Une autre question est il possible de connaître quelle est le codage d'un fichier texte ?
0
cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
4 févr. 2006 à 19:13
Jette un coup d'oeil à ce post de fabrice : C# - Détection du type d'encodage d'un fichier Texte
:-)

/*
coq
MVP Visual C#
*/
0
kik3i1 Messages postés 3 Date d'inscription vendredi 20 janvier 2006 Statut Membre Dernière intervention 12 juin 2006
12 juin 2006 à 15:14
Bonjour,
J'ai un peu le même problème : les accents disparaissent...
J'ai testé la ligne de Stingray_fr_88, à savoir :

System.IO.StreamReader sr = new System.IO.StreamReader(file,System.Text.Encoding.UTF7);

Les accents sont bien réapparus, mais maintenant ce sont les '+' contenu dans certaines chaines de caractères qui se tranforment en caractère chinois! Connaissez vous un encodage qui gérerait à la fois les accents et les carctères genre '+', '*', etc ?

Merci d'avance
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
12 juin 2006 à 20:05
Le mieux serait de savoir avec quel encodage il a été écrit je pense.

/*
coq
MVP Visual C#
*/
0
Rejoignez-nous