Enlever les double guillemets générés par excel !

Signaler
Messages postés
13
Date d'inscription
mardi 6 avril 2004
Statut
Membre
Dernière intervention
10 novembre 2005
-
Messages postés
699
Date d'inscription
mercredi 19 février 2003
Statut
Membre
Dernière intervention
13 mai 2011
-
Salut,

je travaille en java sur un fichier .txt issu d'une table excel. Dans celle ci (la table excel), j'ai des valeurs entre guillemets (ai pas le choix) tel que WriteHexa("02 36 12") et qui donne:

"WriteHexa(""02 36 12"") "

après enregistrement en format.txt, il double les guillemets existante et en rajoute 2 autres au début et fin de la chaine,

bref ca va pas koi !!!

Pourrai les gérer avec java a la lecture du fichier.txt mais c'est pas propre, alors voudrais savoir si avec une tite makro vb lancée lors de la sauvegarde de la table en fichier txt, y a moyen d'éviter leur géneration.

Si avez une idée ou un bout de code à me filer, ca m'aiderai bien !

Merci d'avance

LibiMarion, dev in progress...

1 réponse

Messages postés
699
Date d'inscription
mercredi 19 février 2003
Statut
Membre
Dernière intervention
13 mai 2011
21
Bonjour,

A ma connaissance (à moins de créer une macro qui enregistre elle même dans un fichier texte), tu seras obligé de parcourir tout le fichier ligne par ligne et utiliser la méthode Replace(ligne, """""", """")

Mais autant utiliser la méthode replaceAll() de Java (classe String) si tu dois parcourir ligne par ligne.
Au moins en Java, tu peux facilement utiliser les caractères d'échappement :
while (fichier.readLine()){
System.out.println(replaceAll("""","""));
}

Sinon comme je disais, tu peux faire ta propre macro VB d'enregistrement.
Sub enregistrerTxt()
Range("A1").Activate
Open "D:/USER/test.txt" For Output As #1
While Not IsEmpty(ActiveCell.Value)
Print #1, ActiveCell.Value
ActiveCell.Offset(1, 0).Activate
Wend
Close #1
End sub


Mais dans le cas de la macro, ici je parcours seulement sur la colonne A jusqu'à la dernière cellule remplie.
Donc si ta feuille contient des infos sur plusieurs colonnes, il faudra que tu joues toi même avec les boucles.

Fanny