conversion txt --> xml

conversion txt --> xml - Linux et OS Alternatifs

Marsh Posté le 30-11-2005 à 12:58:35    

bonjour  
 
je voudrais convertir un fichier .txt  en un fichier .xml  en utilisant un programme  .  
 
 
Est-ce possible?  
Et si oui, comment faire?  
 
 
Voici un exemple de .txt  que je veux convertir .xml  
 
001   002  003         004 005  
jour         mois  année heure    mesure  
 
14 11 2005 14:02 135  
15 11 2005 15:06 160  
16 11 2005 13:02 002  
17 11 2005 16:30 019  
18 11 2005 18:48 264  
19 12 2005 09:10 294  
19 12 2005 19:20 284  
19 01 2006 01:00 100  
20 02 2006 09:30 056  
21 02 2006 23:09 084  
22 03 2006 22:16 506  
23 04 2006 15:25 164  
 
merci d'avance

Reply

Marsh Posté le 30-11-2005 à 12:58:35   

Reply

Marsh Posté le 30-11-2005 à 13:01:57    

Heu, tu sais ce qu'est le XML ?
 
au passage vers 4 topics pour un seul sujet :/
http://forum.hardware.fr/forum1.ph [...] warefr.inc
 
edit: de plus ca n'a pas grand chose a voir avec un OS dit alternatif. Sauf si tu veux faire ca sur ce genre de systeme...


Message édité par l0ky le 30-11-2005 à 13:02:50
Reply

Marsh Posté le 30-11-2005 à 13:04:36    

si tu regardes bien mes topics ,on me conseille de me diriger vers le forum OS alternatif.
Pour ma defense , je debute dans le xml.

Reply

Marsh Posté le 30-11-2005 à 13:05:12    

samistil a écrit :

je debute dans le xml.


ça je pense que c'est clair ! :D

Reply

Marsh Posté le 30-11-2005 à 13:05:31    

samistil a écrit :

si tu regardes bien mes topics ,on me conseille de me diriger vers le forum OS alternatif.


nan mais ils disaient ca pour rigoler hein[:mlc2]
Si tu te mets a prendre tout ce que ces boulets disent au pied de la lettre on a pas finit...


Message édité par l0ky le 30-11-2005 à 13:07:55
Reply

Marsh Posté le 30-11-2005 à 13:06:08    

personne peut m'aider alors?  

Reply

Marsh Posté le 30-11-2005 à 13:07:46    

beuh... si tu nous disait a quoi tu voudrait que ca ressemble, deja, ca nous aiderait... parce que
 

Code :
  1. <contenu_txt>
  2. 001   002  003         004 005 
  3. jour         mois  année heure    mesure 
  4. 14 11 2005 14:02 135 
  5. 15 11 2005 15:06 160 
  6. 16 11 2005 13:02 002 
  7. 17 11 2005 16:30 019 
  8. 18 11 2005 18:48 264 
  9. 19 12 2005 09:10 294 
  10. 19 12 2005 19:20 284 
  11. 19 01 2006 01:00 100 
  12. 20 02 2006 09:30 056 
  13. 21 02 2006 23:09 084 
  14. 22 03 2006 22:16 506 
  15. 23 04 2006 15:25 164 
  16. </contenu_txt>


 
repond a ta question... mais c'est surement pas ce que tu veux
 
tu veux peut etre plutot un truc du genre :

Code :
  1. <ligne>
  2.     <date>14 11 2005 14:02</date>
  3.     <mesure>135</mesure>
  4. </ligne>
  5. <!-- etc -->

Reply

Marsh Posté le 30-11-2005 à 13:08:42    

samistil a écrit :

personne peut m'aider alors?


on ne comprend pas ce que tu veux faire. XML est un moyen générique d'organiser des données, si tu nous dit pas comment tu veux les organiser on peut rien pour toi. Lis un tutorial là : http://www.w3schools.com/xml/default.asp
et reviens nous préciser ce que tu veux.

Reply

Marsh Posté le 30-11-2005 à 13:10:12    

Non mais il n'existe aucun outils qui réponde a ton besoin.  
 
commence par apprendre ce qu'est le XML
http://www.google.fr/search?hl=fr& [...] ogle&meta=
http://www.commentcamarche.net/xml/xmlintro.php3

Reply

Marsh Posté le 30-11-2005 à 13:14:02    

bibiskuk, je veu quelque chose de ce genre :
 
<ligne>  
    <jour>14</jour>
    <mois>11</mois>
     <année>2005 </année>
     <heure>14:02 </heure>
    <mesure>135</mesure>  
</ligne>  
 
 
Je voudrais faire un programme qui rentre toutes les données sous la forme précédente  .
Vous comprenez?

Reply

Marsh Posté le 30-11-2005 à 13:14:02   

Reply

Marsh Posté le 30-11-2005 à 13:16:11    

Et tu veux le faire en quoi ton programme ?
C++, C, java awk, perl ?

Reply

Marsh Posté le 30-11-2005 à 13:19:35    

tail +4 file |  awk '{ print "<ligne>\n  <jour>"$1"</jour>\n  <mois>"$2"</mois>\n  <annee>"$3"</annee>\n  <heure>"$4"</heure>\n  <mesure>"$5"</mesure>\n</ligne>" }'
 
 
[:minusplus]

Reply

Marsh Posté le 30-11-2005 à 13:20:53    

mv fichier.txt fichier.xml

Reply

Marsh Posté le 30-11-2005 à 13:21:00    

si tu as la possibilité d'utiliser Awk, c'est très facile de passer ton fichier de données brutes en XML.
Edit : Grilled par Minusplus (qui en plus donne directement le script :) )


Message édité par jlighty le 30-11-2005 à 13:24:58
Reply

Marsh Posté le 30-11-2005 à 13:21:57    

en C ou C++ ,ce serait  bien.

Reply

Marsh Posté le 30-11-2005 à 13:23:43    

samistil a écrit :

en C ou C++ ,ce serait  bien.


ben faut poster dans prog alors...  
 
 
[:ddr555]

Reply

Marsh Posté le 30-11-2005 à 13:24:28    

il n'y a pas grand chose à faire :
1- ouvrir le fichier (fopen)
2- pour chaque ligne, les segmenter (avec comme séparateur l'espace)
3- ecrire dans un autre fichier la chaine de caractère modifié (ajout des balises)
 

Reply

Marsh Posté le 30-11-2005 à 13:24:43    

minusplus a écrit :

ben faut poster dans prog alors...  
[:ddr555]

il a fait [:petrus75]
Résultat il est ici et TT là bas[:god]


Message édité par l0ky le 30-11-2005 à 13:25:22
Reply

Marsh Posté le 30-11-2005 à 13:25:20    

il est dans une boucle sans fin :) (jusqu'à l'obtention d'un TT )


Message édité par jlighty le 30-11-2005 à 13:35:18
Reply

Marsh Posté le 30-11-2005 à 13:26:58    

il y a bien un logiciel dans  Windows, Software & Réseaux qui doit faire ça non ? [:god]

Reply

Marsh Posté le 30-11-2005 à 13:27:53    

jlighty, est -ce que tu peu me l'expliquer avec un exemple stp?
 
je suis allé dans prog et personne n'a voulu ou pu m'aider. Donc me voici ici.

Reply

Marsh Posté le 30-11-2005 à 13:28:58    

tu sais programmer en C ?

Reply

Marsh Posté le 30-11-2005 à 13:29:01    

ory, je voudrais creer moi meme un programme.

Reply

Marsh Posté le 30-11-2005 à 13:29:37    

je sais un peu programmé en C.

Reply

Marsh Posté le 30-11-2005 à 13:30:04    

la ligne de code que t'as donné minus plus marche, mais si tu le veux en C...
 
 
Edit : Sinon, c'est vraiment simple a faire en C... jlighty t'as deja tout donné


Message édité par Profil supprimé le 30-11-2005 à 13:31:06
Reply

Marsh Posté le 30-11-2005 à 13:32:21    

Citation :

je sais un peu programmé en C.


tu as surement appris à lire/ecrire dans un fichier sinon regarde les différents tutoriaux sur le net (ou disponible dans la catégorie programmation  http://mapage.noos.fr/emdel/ d'Emmanuel  Delahaye).


Message édité par jlighty le 30-11-2005 à 13:33:04
Reply

Marsh Posté le 30-11-2005 à 13:32:22    

tu lit le fichier du début a la fin
A chaque espace que tu rencontre tu fermes la balise XML précédente </truc> et tu ouvre la suivante <machin>
au debut de chaque ligne tu ouvre une pour <ligne> et a la fin tu la ferme </ligne>
 
[:spamafote]
 
scanf fprintf fopen...

Reply

Marsh Posté le 30-11-2005 à 13:33:22    

bibiskuk, est -ce que je pourrais avoir un exemple de programme svp?

Reply

Marsh Posté le 30-11-2005 à 13:39:04    

Comment ecrire dans un autre fichier la chaine de caractère modifié (ajout des balises) ?

Reply

Marsh Posté le 30-11-2005 à 13:40:04    

avec fprintf

Reply

Marsh Posté le 30-11-2005 à 13:40:50    

fprintf par exemple http://www.linux-france.org/articl [...] ntf-3.html
 
edit: [:dawao]


Message édité par l0ky le 30-11-2005 à 13:41:12
Reply

Marsh Posté le 30-11-2005 à 13:41:06    

GTLA :o

Reply

Marsh Posté le 30-11-2005 à 13:42:59    

je comprends pas comment faire ce programme ?

Reply

Marsh Posté le 30-11-2005 à 13:44:33    

samistil a écrit :

je comprends pas comment faire ce programme ?


Est-ce une question ?

Reply

Marsh Posté le 30-11-2005 à 13:45:42    

jlighty, tu peu me montrer un programme de ce type stp?

Reply

Marsh Posté le 30-11-2005 à 13:49:23    

programme type ?  

Code :
  1. #include <stdio.h>
  2. int main(int argc, char** argv)
  3. {
  4.     printf("hello world\n" );
  5.     return 0;
  6. }


comme ceci ?


Message édité par jlighty le 30-11-2005 à 13:50:12
Reply

Marsh Posté le 30-11-2005 à 13:50:32    

Mon probleme, c'est que je ne vois pas comment faire ces deux étapes:
 
- pour chaque ligne, les segmenter (avec comme séparateur l'espace)  
- ecrire dans un autre fichier la chaine de caractère modifié (ajout des balises)  
 
Est -ce que quelqu'un peut m'expliquer en me donnant un exemple ?

Reply

Marsh Posté le 30-11-2005 à 13:55:21    

Reply

Marsh Posté le 30-11-2005 à 13:56:10    

en gros :

Code :
  1. fopen...... (ouvre le fichier txt)
  2. fopen.... (ouvre le fichier xml)
  3. while(....)
  4. fscanf (ou fgets + découpage de la chaine)
  5. fprintf(...)
  6. close (ferme le canal du fichier txt)
  7. close (ferme le canal du fichier xml)


Message édité par jlighty le 30-11-2005 à 13:56:53
Reply

Marsh Posté le 30-11-2005 à 13:56:48    

Je ne vois pas comment faire
- pour chaque ligne, les segmenter (avec comme séparateur l'espace)  
- ecrire dans un autre fichier la chaine de caractère modifié (ajout des balises)  
 
Est-ce que quelqu'un peut m'aider a le faire?

Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed