Import de fichier texte

Bonjour,

N'ayant pas réussi à importer du XML dans calc, j'ai écrit une macro pour le transformer en csv.
Sauf que, lorsque je l'ouvre dans writer pour pouvoir le traiter, il me rajoute des retours paragraphe.
Cela vient-il d'un problème de longueur maximum de paragraphe ? Quelqu'un aurait-il une idée ?

Merci d'avance

Claude

Bonjour,

En csv le retour de ligne est le délimiteur d'enregistrement. Ça me semble
donc normal. Vous devriez utiliser le csv pour importer dans Calc, le csv
étant un format tabulaire par définition.

Thierry

Désolée je dois très mal m'exprimer mais dans mon cas le retour ligne n'est pas une marque de fin d'enregistrement puisqu'au le fichier d'origine est un ficher XML qui n'a aucun retour et je voulais par macro le transformer en csv avec justement les retour à la ligne à chaque changement d'entité

Pour la réponse précédente de Bernard, malheureusement pour moi je ne peux pas disposer des logiciels tels que vim ou emacs (regardez le domaine de mon adresse).

Quand à notepad je ne me vois pas faire toutes les transformations que fait ma macro à la main.

Merci quand même pour vos réponses

-------- Message original --------
*Sujet: *[INTERNET] Re: [fr-users] Import de fichier texte
*Pour : *PREF31 Libreoffice <pref-open-office@haute-garonne.gouv.fr>
*Copie à : *users@fr.libreoffice.org

Re-Bonjour,

Intrigué par votre souci mais n'ayant pas tout le Thread j'ai suivi la doc
décrivant comment lire un xml en disposant du xslt (lien qui est passé au
fil de cette discussion). C'est bien votre cas ? Avez-vous suivi ces
indications, en commençant par enregistrer le filtre d'import dans
LibreOffice ?

Si oui, quel résultat avez-vous obtenu ?

Sans filtre, décortiquer un xml est très vite compliqué. Vous pouvez
utiliser un éditeur tel que notepad et chercher/remplacer une balise de fin
d'élément par un saut de ligne, par exemple, puis utiliser la fonction de
tri de votre système d'exploitation (sort) pour regrouper les entrées de
même nature. Mais vous finirez quand même par un peu/beaucoup de travail
manuel.

Quant à Vim, Emacs, etc, on peut en effet constituer une liste complète des
éditeurs qui vont bien, il y en a une tripotée aujourd'hui, mais je n'en
connais aucun qui vous mettra votre xml d'équerre tout seul.

Thierry

Oui c'est bien moi qui n'ai pas réussi à importer le XML. J'ai suivi pas à pas l'exemple donné. Le filtre est bien proposé lorsque j'ouvre le document, je le choisis et rien n'est importé.

Par contre, comme le xml que je veux traiter est simple et que je dispose de son XSD, il suffit que je remplace les balises de fin de champ par ";", les balises de champ vide par ";" et les balises de fin d'enregistrement par des retours à la ligne. Tout fonctionnait parfaitement sur un fichier avec peu d'enregistrements. Mais sur le fichier réel qui comprend plus de 600 enregistrements, l'ouverture dans writer rajoute des retours à la ligne intempestifs qui sont interprétés ensuite comme des fins d'enregistrement et donc provoquent des décalages.

C'est pourquoi j'avais demandé s'il y avait une raison à cela et éventuellement comment contourner ce problème.

merci quand même.

Claude

-------- Message original --------
*Sujet: *[INTERNET] Re: Re: [fr-users] Import de fichier texte
*Pour : *PREF31 Libreoffice <pref-open-office@haute-garonne.gouv.fr>
*Copie à : *bernard.schoenacker@free.fr, users@fr.libreoffice.org

ça m'intrigue tout autant que Thierry, il faudrait que tu nous décrive plus précisément la méthode que tu as utilisée. Tu verras sur l'autre fil, que la difficulté peut être uniquement là.

c'est les 600 enregistrements où la taille du contenu qui provoque ces décalages ? Pourrais-tu voir ce que ça donne, sur un fichier limité mais avec une modalité à plus de 255 caractères ?

Claire

Je vois mieux. Alors, je ne pense pas que Writer soit le meilleur outil pour ce genre de manip, car il va tenter d’appliquer un formatage. En général, lorsqu’on travaille sur des fichiers en mode caractère, plus l’éditeur est proche de ce mode et mieux ça marche.

Mais quand même, pourquoi le xsd ne fonctionne-t-il pas ? C’est agaçant…

En résumé, il serait bien de nettoyer le XML en utilisant Notepad, je crois que ses fonctions de recherche/remplacement sont suffisantes. Ou alors, carrément ce qui est décrit ici : https://www.dostips.com/?t=batch.findandreplace Le remplacement se fait directement en ligne de commande, habituellement c’est extrêmement rapide et efficace… Mais si vous n’êtes pas familière du mode ligne de commande étendu de DOS, vous risquez de souffrir un brin ! :wink:

Courage !

Thierry

Désolée, je n'avais pas pensé à regarder, writer rajoute un retour tous les 9999 caractères.

Vraiment merci de vous pencher sur mon problème.

Je pars en congés, je continuerai à y travailler depuis chez moi mais peut-être pas tout de suite.

Claude

-------- Message original --------
*Sujet: *[INTERNET] Re: [fr-users] Import de fichier texte
*Pour : *PREF31 Libreoffice <pref-open-office@haute-garonne.gouv.fr>, Thierry Jeanneret <thierry.jeanneret@gmail.com>
*Copie à : *users@fr.libreoffice.org

Bonjour,
Si le fichier est reconnu comme un csv, il devrait s'ouvrir dans Calc et non pas dans Texte.

Jean-Michel PIERRE
Tél : 06.19.55.73.22