J'ai déjà lu divers Posts sur ce sujet, mais aucun ne traite complètement de mon problème qui est double.
mon appli génère un fichier CSV, comprenant des cellules avec accents.
1 - Ce fichier doit s'ouvrir dans Excel comme s'il avait été généré par Excel lui même.
2 - il doit m'afficher les accents.
J'ai écrit :
J'obteins un caratère parasite en début de fichier :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 string line = "1;2;3;hé oui"; StreamWriter sw = new StreamWriter(fs, Encoding.UTF8); sw.Write(line); sw.Write('\n');
alors j'ai écrit :
Résultat : plus de caractère parasite, mais les accents disparaissent :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 string line = "1;2;3;hé oui"; System.IO.BinaryWriter sw = new BinaryWriter(fs, Encoding.UTF8); sw.Write(line); sw.Write('\n');
Alors j'ai écrit :
plus de caractère parasite en début de fichier, les accents sont remplacés par des caractères ????.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 string line = "1;2;3;hé oui"; System.IO.BinaryWriter sw = new BinaryWriter(fs, Encoding.UTF8); byte[] DefaultLine = Encoding.Default.GetBytes(ligne); Encoding DestEnc = Encoding.UTF8; Encoding SrcEnc = Encoding.Default; byte [] CSVLine = Encoding.Convert(SrcEnc, DestEnc, DefaultLine); sw.Write(line); sw.Write('\n');
J'ai donc remplacé par :
et là : Raz le bol j'obtiens un message d'erreur de Excel :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 string line = "1;2;3;hé oui"; System.IO.BinaryWriter sw = new BinaryWriter(fs, Encoding.Unicode); byte[] DefaultLine = Encoding.Default.GetBytes(ligne); Encoding DestEnc = Encoding.Unicode; Encoding SrcEnc = Encoding.Default; byte [] CSVLine = Encoding.Convert(SrcEnc, DestEnc, DefaultLine); sw.Write(line); sw.Write('\n');
Impossible de reconnaitre le format de fichier !
si malgrè tout je clique sur OK pour ouvrir le fichier. Il a les accents, mais Tout est collé dans la colonne 1. D'accord on peut passer par "Données\Convertir", mais moi je veux que ce soit automatique, comme pour un fichier généré sur Excel.
Comment faire pour cela ? Quel format utiliser pour cette P.... d'ouverture automatique de Excel, je ne trouve pas ! Help Please...
Partager