Bonjour,
j'aimerai savoir si il est possible de convertir un fichier XML de 531mo en fichier JSON avec du C++ ou javascript
merci de votre aide
Bonjour,
j'aimerai savoir si il est possible de convertir un fichier XML de 531mo en fichier JSON avec du C++ ou javascript
merci de votre aide
Hello,
c'est tout à fait possible, oui. Vu la taille il va falloir utiliser des API de streaming au lieu de tout charger en mémoire. Et côté JavaScript je connais rien qui fasse ça, mais tous les langages ont une API StAX pour lire du XML en streaming. Pour écrire le JSON en streaming là je ne sais pas ce qui existe avec ces langages, mais ça devrait aller en cherchant.
Reste à déterminer comment tu veux convertir le XML en JSON précisément. Ces deux langages ne sont pas équivalents et aucun ordinateur ne va décider à ta place par quel JSON remplacer quelle balise XML. C'est ton travail de décider ça.
J'ai trouvé ce lien pour une conversion en c++, je suis sur codeBlock mais je ne vois pas comment utiliser les ressources données pour réaliser cette conversion.
https://github.com/Cheedoong/xml2json
Mon but est de récupérer sans header et footer les informations à partir de cette balise jusqu’à sa fin et de transformer tout son contenu en JSON
Il y a plusieurs bloc TradeMark
<TradeMark operationCode="Insert">
</TradeMark>
<TradeMark operationCode="Insert">
</TradeMark>
<TradeMark operationCode="Insert">
</TradeMark>
Ça fait 15 ans que je n'ai plus fait de C++ et je n'ai pas d'environnement de dev sous la main pour regarder comment utiliser telle ou telle bibliothèque.
En tout cas je doute que celle-ci puisse te convertir des fichiers de 850Mo sans des contraintes très déraisonnables sur la mémoire (après, peut-être que tu peux les supporter, je ne sais pas.) Elle charge tout le XML d'entrée depuis une string et renvoie une autre string en résultat. Ce qui sous-entend qu'en plus en interne elle charge des représentations intermédiaires des données pour les traiter, ce qui nous fait au minimum trois copies complètes en mémoire du XML de départ (et la représentation mémoire est bien plus lourde qu'un simple texte.)
Par ailleurs, cette bibliothèque fait la conversion à ta place, c'est à dire qu'elle choisit elle-même par quel JSON remplacer quel XML. J'ai dit qu'un ordinateur ne peut pas faire ça, mais je voulais dire, pas si on veut que ça serve à quelque chose.
Est-ce que tu as regardé quel genre de conversion est faite par cette bibliothèque ? Est-ce qu'on peut s'arrêter deux secondes et essayer d'imaginer du JSON plus pourri et inexploitable que ça ? Si c'est pour faire du JSON qui ne servira jamais à rien, il vaut mieux se passer de faire une conversion et garder le XML de départ, lui au moins on peut s'en servir.
Cette bibliothèque peut avoir un intérêt si tu as un client ou un partenaire stupide qui ne connaît rien aux formats mais qui refuse le XML et n'accepte que le JSON, sans se demander si le JSON vaut quelque chose ou si c'est de la merde.
Ou alors, lorsqu'il se trouve qu'on avait conçu le XML dès le départ pour que cette bibliothèque le comprenne bien et le convertisse bien.
Dans ces cas-là, oui, elle fait le boulot à notre place sans qu'on se fatigue. Mais sinon ça n'a aucun intérêt de remplacer du XML par un truc inutilisable.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager