Lecture fichier CSV : caractère é è ë ê à,... effacés [Résolu]

Messages postés
5
Date d'inscription
jeudi 26 mai 2005
Dernière intervention
23 mars 2006
- - Dernière réponse : cs_coq
Messages postés
6366
Date d'inscription
samedi 1 juin 2002
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.
Afficher la suite 

Votre réponse

5 réponses

Meilleure réponse
Messages postés
6366
Date d'inscription
samedi 1 juin 2002
Dernière intervention
2 août 2014
3
Merci
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#
*/

Merci cs_coq 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 98 internautes ce mois-ci

Commenter la réponse de cs_coq
Messages postés
5
Date d'inscription
jeudi 26 mai 2005
Dernière intervention
23 mars 2006
0
Merci
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 ?
Commenter la réponse de Stingray_fr_88
Messages postés
6366
Date d'inscription
samedi 1 juin 2002
Dernière intervention
2 août 2014
0
Merci
Jette un coup d'oeil à ce post de fabrice : C# - Détection du type d'encodage d'un fichier Texte
:-)

/*
coq
MVP Visual C#
*/
Commenter la réponse de cs_coq
Messages postés
3
Date d'inscription
vendredi 20 janvier 2006
Dernière intervention
12 juin 2006
0
Merci
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
Commenter la réponse de kik3i1
Messages postés
6366
Date d'inscription
samedi 1 juin 2002
Dernière intervention
2 août 2014
0
Merci
Le mieux serait de savoir avec quel encodage il a été écrit je pense.

/*
coq
MVP Visual C#
*/
Commenter la réponse de cs_coq

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.