Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1237 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  [VBA] extraire des noeuds d'un gros fichier XML

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[VBA] extraire des noeuds d'un gros fichier XML

n°2033254
mortelrdv
Posté le 30-10-2010 à 11:06:28  profilanswer
 

Bonjour,
 
Je débute en VBA de Excel 2003 SP2.
 
J'ai un fichier XML de ~1,3Go, je cherche à extraire tel quel certains noeuds (et ces descendant) dans ce gros fichier.
La methode par DOM n'est pas possible (fichier trop gros), auriez vous des conseils/exemples de comment je devrais le faire ?
 
exemples
http://nsa19.casimages.com/img/2010/10/30/101030110308260624.png
 
 
Merci
 
[URL=http://www.hostingpics.net/viewer.php?id=650048exemples.png]


Message édité par mortelrdv le 30-10-2010 à 11:14:43
mood
Publicité
Posté le 30-10-2010 à 11:06:28  profilanswer
 

n°2033867
Xxxaaavvv
Posté le 03-11-2010 à 18:04:33  profilanswer
 

(je ne peux pas accéder aux images...)
 
Sans DOM ça va être casse couille.
 
y a des retour a la ligne dans ton fichier ou pas ?
 
En théorie, t'as plus qu'a lire séquentiellement le fichier et détecter l'ouverture de la balise que tu cherche avec InStr()
et puis détecter la fermeture...
 
tu fait quoi de cette extraction ?
elle pèse combien cette extraction ? parceque stocker 1,3 giga dans une chaine de caractère ça peut être rigolo aussi :D

n°2033972
mortelrdv
Posté le 04-11-2010 à 11:32:54  profilanswer
 

je comptais extraire de ce gros fichier ~1Mo.
je me disais que peut être il y avait une solution que la lecture séquentielle en traitant le fichier comme du texte (meme si je ne sais pas comment m'y prendre) :p
Concernant la lecture séquentielle, aurais tu quelque pistes vers quoi m'orrienter ? je suis plutôt débutant.


Message édité par mortelrdv le 04-11-2010 à 11:35:20
n°2033977
Xxxaaavvv
Posté le 04-11-2010 à 11:44:46  profilanswer
 

Citation :


Line Input #, instruction, exemple
Cet exemple utilise l'instruction Line Input # pour lire une ligne dans un fichier séquentiel et l'affecter à une variable. Nous supposons que FICHTEST est un fichier texte comportant quelques lignes de données exemple.
 


Dim TextLine
Open "FICHTEST" For Input As #1   ' Ouvre le fichier.
Do While Not EOF(1)   ' Effectue la boucle jusqu'à la fin du fichier.
   Line Input #1, TextLine      ' Lit la ligne dans la variable.
   Debug.Print TextLine   ' Affiche dans la fenêtre Exécution.
Loop
Close #1   ' Ferme le fichier.
 



Message édité par Xxxaaavvv le 04-11-2010 à 11:45:01

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  [VBA] extraire des noeuds d'un gros fichier XML

 

Sujets relatifs
[C#] Erreur lors de l'ouverture d'un fichierFichier PAC et fonction myIpAddress
extraire un chiffre d une chaine de caractere [résolu][VBA] Problème lors de l'ouverture des fichiers
[VBA] Créer une fonction utilisée en tant que formuleCompilation d'un fichier d'aide HTML (chm)
[RESOLU]redirection php a partir d'un form le tout sur un seul fichier[VBA]modifier point d'entrée du programme [Resolu]
Trouver quelle appli utilise une ressource / un fichier locképrogrammation en VBA
Plus de sujets relatifs à : [VBA] extraire des noeuds d'un gros fichier XML


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR