IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

Problème affichage fichier csv après execution d'un code C# qui lit ce fichier csv [Débutant]


Sujet :

C#

  1. #21
    Membre éclairé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2008
    Messages
    381
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Août 2008
    Messages : 381
    Points : 766
    Points
    766
    Par défaut
    Citation Envoyé par zakaros Voir le message
    après j'ouvre le fichier csv en utilisant excel ou un éditeur de texte je trouve l'affichage modifier
    Excel permet d'afficher les fichier CSV de différente manière, tout en conservant le fichier intact. Il manipule les fichiers en mémoire et génère un affichage.
    Donc l'affichage peut être différent, mais le fichier lui reste intact.

    Parce que si en fermant ton programme les fichiers redeviennes "normal", c'est qu'ils ne sont pas modifiés.

    Tu ouvres le fichier Excel avec une ligne de commande dans ton code, peut-être un mauvais paramètre?? Dans les paramètres que tu passes il y a
    Est-ce que c'est le séparateur CSV? Car dans un fichier que tu nous as montré tes séparateurs semblent être des point-virgule ";".

    Pour l'affichage différent dans un éditeur de texte, on parle de quoi là? Wordpad, Word? Le plus simple c'est Notepad, car il ne fait aucun traitement pour l'affichage. Si c'est un éditeur plus avancé alors il peut effectuer des traitements et modifier l'affichage.

    1) Alors tu ouvres ton fichier dans notepad.
    2) Tout en laissant notepad ouvert, tu exécutes ton programme.
    3) Tu ouvres ton fichier dans une autre instance de notepad
    4) Tu constates que les 2 notepads sont pareil (mon hypothèse)

    Conclusion : Fichier intact, problème d'affichage. Sinon

  2. #22
    Futur Membre du Club
    Inscrit en
    Mai 2010
    Messages
    16
    Détails du profil
    Informations forums :
    Inscription : Mai 2010
    Messages : 16
    Points : 8
    Points
    8
    Par défaut
    Oui j'ai mis mes fichiers csv en lecture seule, pas pb, c'est impossible que les fichiers serons modifiés mais tjrs je ne comprend pas pour quoi après l’exécution j'ouvre un csv je trouve l'affichage avec des séparateurs ';'

    fichier csv avant execution: Nom : csv_avant.gif
Affichages : 600
Taille : 40,1 Ko

    fichier csv après execution:Nom : csv_après.gif
Affichages : 374
Taille : 20,8 Ko

  3. #23
    Futur Membre du Club
    Inscrit en
    Mai 2010
    Messages
    16
    Détails du profil
    Informations forums :
    Inscription : Mai 2010
    Messages : 16
    Points : 8
    Points
    8
    Par défaut
    Notepad affiche les fichier avec les separateurs ';' avant et après l'execuction est ce normal ?? :

    Nom : notepad_affichage.GIF
Affichages : 366
Taille : 11,7 Ko

  4. #24
    Membre confirmé Avatar de Jabbal'H
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2004
    Messages
    403
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2004
    Messages : 403
    Points : 580
    Points
    580
    Par défaut
    Aaaaargggggg !!!!!! Mais fallait commencer par là !!!
    Oui c'est normal, c'est son formatage depuis le début, Excel format les fichier csv tout seul, et son séparateur par défaut est le ";"

    Donc, maintenant pourquoi ton affichage change ???
    C'est simple, avant tu ouvre ton fichier, format de séparation par défaut, je vous le donne Emile : ";"

    Ensuite, pourquoi il ne prend plus ce format ????? Une idée Emile ??
    Yep la doc de la méthode Open
    Delimiter
    Facultatif
    Variant
    S’il s’agit d’un fichier texte et que l’argument Format a la valeur 6, cet argument est une chaîne qui spécifie le caractère à utiliser comme séparateur. Par exemple, utilisez Chr(9) pour les tabulations, « , » pour les virgules, « ; » pour les point-virgules ou le caractère de votre choix. Seul le premier caractère de la chaîne est utilisé.
    Et dans ton code, c'est quoi ? "\t" La tabulation donc (enfin je crois)

    Alors résumons
    1ere ouverture, formatage par défaut avec un point virgule, excel l'ouvre avec une jolie visualisation, dans un Notepad, séparation avec des points virgule.
    Ensuite, on lance le programme, on pilote Excel et on lui dit que le séparateur par défaut est la tabulation.
    Ouverture d'Excel, une visualisation pas très jolie ! Normal, il attend un séparateur en tabulation et a un fichier avec des points virgules, donc il l'affiche comme un notepad
    Ouverture dans Notepad, pas de changement, normal il ne fait pas de formattage.

    Ensuite fermeture du programme et ouverture dans Excel, il doit avoir récup son séparateur par défaut qui est le point virgule.

    Purée, les prêtres vaudoux, c'est plus ce que c'était.
    Désolé, le message est peut être un peu ..... hum brut, ton problème était certes étrange, mais tu l'as très très mal expliqué, ce qui nous a fait tourner en rond pendant un moment.

    Sur ce, moi je vais me taper une bière bien fraîche !!!

    [Edit] Ah oui et surtout, lit bien les réponses que l'on te donnais, ca fait depuis le début qu'on te dit que ton fichier à des points virgule comme séparateur et de comparer dans un notepad avant et après l'éxécution

  5. #25
    Membre éclairé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2008
    Messages
    381
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Août 2008
    Messages : 381
    Points : 766
    Points
    766
    Par défaut
    Bref, remplacer
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    xlWorkBook = xlApp.Workbooks.Open("C:/Documents and Settings/zakaria/Bureau/lecture-fichier-csv-et-affichage-dans-un-datagrid/bin/Debug/fichier.xlsx", 0, true, 5, "", "", true, Microsoft.Office.Interop.Excel.XlPlatform.xlWindows, "\t", false, false, 0, true, 1, 0);
    par ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    xlWorkBook = xlApp.Workbooks.Open("C:/Documents and Settings/zakaria/Bureau/lecture-fichier-csv-et-affichage-dans-un-datagrid/bin/Debug/fichier.xlsx", 0, true, 5, "", "", true, Microsoft.Office.Interop.Excel.XlPlatform.xlWindows, ";", false, false, 0, true, 1, 0);

  6. #26
    Futur Membre du Club
    Inscrit en
    Mai 2010
    Messages
    16
    Détails du profil
    Informations forums :
    Inscription : Mai 2010
    Messages : 16
    Points : 8
    Points
    8
    Par défaut
    OK maintenant que c'est claire, alors j'ai essayé votre proposition : remplacement de "\t" par ";" dans la méthode open() mais ça ne résout pas le problème , toujours visualisation (pas jolie) avec des séparateurs ";" dans excel, et ça arrive toujours juste après l’exécution de la méthode open() :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    xlWorkBook = xlApp.Workbooks.Open("C:/Documents and Settings/zakaria/Bureau/lecture-fichier-csv-et-affichage-dans-un-datagrid/bin/Debug/fichier.xlsx", 0, true, 5, "", "", true, Microsoft.Office.Interop.Excel.XlPlatform.xlWindows, ";", false, false, 0, true, 1, 0);
    peut être il faut modifier une autre caractéristique de la méthode open() !! ou bien c'est comme ça (Accepter une visualisation pas très jolie avec excel), surtt les utilisateurs de mon programme ils vont pas aimer !

  7. #27
    Membre éprouvé
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    674
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 674
    Points : 1 176
    Points
    1 176
    Par défaut
    Bonjour,
    en regardant Workbooks._Open Method et Méthode Workbooks.Open (Excel), il semble que le paramètre Format doit être à 4 dans le cas du ";" et qu'il prédomine sur le paramètre Delimiter.
    A noter que l'on peut utiliser Open avec seul le premier paramètre qui est requis, les autres étant optionnels...

  8. #28
    Futur Membre du Club
    Inscrit en
    Mai 2010
    Messages
    16
    Détails du profil
    Informations forums :
    Inscription : Mai 2010
    Messages : 16
    Points : 8
    Points
    8
    Par défaut
    Ouiiiiiiiii chrismonoye c'est ça qui manque, problème résolu, ça marche très bien .
    merci à tous (Jabbal'H et PatteDePoule) et désolé pour mes petits caprices !

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 2 PremièrePremière 12

Discussions similaires

  1. quel est le programme qui lit mon fichier de config
    Par ikuzar dans le forum Autres Logiciels
    Réponses: 1
    Dernier message: 31/08/2010, 09h44
  2. Réponses: 4
    Dernier message: 11/01/2010, 21h51
  3. [PHP 5.0] Créer un fichier HTML aprés execution de la page PHP
    Par johnson95 dans le forum Langage
    Réponses: 10
    Dernier message: 20/12/2008, 12h01
  4. problème sur la feuille après execution de la macro
    Par vacknov dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 13/11/2007, 08h16
  5. Réponses: 2
    Dernier message: 14/05/2006, 19h36

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo