Ouvrir un grand fichier XML

7

J'essaie d'ouvrir un fichier XML relativement volumineux (50 Mo), mais mon Mac ne veut tout simplement pas l'ouvrir: aucune erreur, cependant, j'ai attendu près de 10 minutes, mais rien ne se passe.

Essayé en utilisant Éditeur de texte, Xcode

D'autres suggestions?

inside
la source
1
Avez-vous vérifié que le fichier n'est pas corrompu? Si vous cat le fichier, pouvez-vous voir le contenu? Dans Terminal, tapez cat foobar.xml
Allan
oui, le fichier n'est pas corrompu, j'ai un tas de fichiers XML similaires, tous ceux qui sont une petite taille 1-5mb s'ouvrent très bien.
inside

Réponses:

4

Selon la source du fichier, vous voudrez peut-être examiner son contenu autrement que par son ouverture (double-clic). Pour cela, vous devez utiliser la ligne de commande.

Quelques points de départ suggérés (où "quel que soit le fichier.xml": le nom du fichier):

file whatever.xml

Cela vous dira quoi type le fichier est. Pas par extension de fichier, mais par examen réel du contenu.

head whatever.xml

Cela vous montrera les dix premières lignes du fichier. Cependant, soyez averti: est Il est possible d’avoir un fichier XML complet de 50 Mo composé d’une seule ligne. Appuyez sur Ctrl-C pour arrêter s’il commence à cracher des ordures. (Oui, Contrôle C, pas Command-C.)

Pour visualiser le fichier sans même avoir la possibilité de le modifier:

less whatever.xml

Si le fichier Est-ce que se composent de très longues lignes; pour le lire, vous pouvez forcer le retour à la ligne périodique (formatage):

fmt whatever.xml | less

Mais en fait, less enroulera les lignes par défaut à moins que vous ne le lui disiez Pour que les lignes ne soient pas entourées (vous pouvez donc utiliser les touches fléchées latérales pour faire défiler):

less -S whatever.xml

C'est une bonne probabilité qu'une de ces commandes révèle un problème avec le fichier.

Wildcard
la source
3

J'utilise Sublime Text 3 pour effectuer certaines de mes modifications. Un très joli et assez rapide éditeur programmable (avec plugins). Je viens de l'essayer sur un fichier texte de 50 Mo et il ne semblait pas avoir de problème. Sublime Text 3 n'est pas gratuit, mais sa période d'essai gratuite semble infinie. Pendant que je vérifiais Sublime Text, j’ai aussi essayé Atom. Atom était plus lent au chargement mais une fois chargé, tout semblait aller bien.

jmh
la source
2

Mon éditeur de goto pour les gros fichiers est BBEdit . J'ai ouvert des fichiers beaucoup plus volumineux (200 Mo + fichiers journaux) sans aucun ralentissement. Je l'ai même utilisé pour ouvrir des fichiers binaires afin de rechercher des chaînes ascii. Si BBEdit ne peut pas l'ouvrir, rien ne le peut.

Ɱark Ƭ
la source
J'ai utilisé TextWrangler avec succès sur de très gros fichiers et cela ne suffira pas à étouffer Sublime ou d'autres. Etant donné qu’ils "font disparaître" TextWrangler en faveur de BBEdit, je dis que c’est correct. Si vous avez une ancienne copie de TW, cela pourrait également fonctionner.
cleaver
À l'origine, j'avais écrit un paragraphe expliquant pourquoi je recommandais BBEdit à TextWrangler, mais je l'avais supprimé, car il ne semblait pas pertinent pour la question et était plus long que ma réponse réelle.
Ɱark Ƭ
1

Si vous voulez juste l'ouvrir (pas l'éditer), essayez xmllint commande dans Terminal:

xmllint --format ~/Desktop/file.xml

Il y a une page de manuel pour xmllint outil de ligne de commande: Va ici


la source
0

Travailler avec des fichiers XML plus gros, je suggère de l'essayer Oxygen XML Editor r ou Texte sublime .
Alors que le premier est mon éditeur de choix pour sa polyvalence, il est également assez lourd. Si vous devez simplement aller pour une lecture facile ou une recherche & amp; En remplaçant, cela peut être fait dans Sublime Text 3. Cela prend du temps, mais ça ne plante pas.
Tous les autres rédacteurs que j'ai essayés n'étaient pas en mesure d'ouvrir le fichier (je parle de gros fichiers xml, & gt; 200 Mo), ou ils ont pris des siècles. De plus, Oxygen et Sublime vous fournissent l’option de surlignage de code (dans le cas où vous utilisez des langues RDF, par exemple ...).
J'espère que ça aide

K3it4r0
la source