Bonjour,
(J'utilise excel 2007 pour générer les fichiers csv)
Je dois développer une application en C# qui doit importer des fichier (format csv => séparateur = ";") puis les lire.
J'importe mon fichier grâce à un composant "FileUpload", et j'ai un autre bouton pour effectuer le traitement de lecture du fichier importé.
Voilà ce que je fais pour lire le fichier.
J'utilise la fonction ReadAllLines avec LINQ :
Mon problème est que je n'arrive pas à récupérer correctement les accents de mes chaînes de caractères, dans mon code C#.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 var query = from line in File.ReadAllLines(Server.MapPath("~/UploadedFiles/UploadFolderTest/") + Path.GetFileName(Fileupload1.FileName)) let values = line.Split(';') let nbColumns = values.Count() select new { column0= values.ElementAt(0), column1= nbColumns > 1 ? values.ElementAt(1) : string.Empty, };
A la place des accents, j'ai des symboles bizarres (losange noir avec point d'interrogation)
C'est probablement dû à un système d'encodage/décodage.
1) Comment connaître quel est l'encodage de mon fichier csv ? (ASCII, Unicode, UTF- ..) ?
2) Dans mon cas, que dois-je faire pour arriver à récupérer mes accents dans mon code C#.
Merci de votre aide.
Partager