Bonjour;
Je voudrais sauvegarder des données générées à partir d'un programme en C sous format xlm.
cependant je n'arrive pas à insérer des sauts de ligne, le "\n" ne fonctionne pas et si j'utilise <br/> ce fonctionne mais la balise <br/> est affichée avec les données, ce qui n'est pas souhaitable pour mon application.
ci joint le code qui permet de sauvegarder les données au format xlm
Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43 xml=fopen("mesure_xyz.xml", "at"); fprintf(xml,"<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n"); fprintf(xml, "<EmissionScan>\n"); fprintf(xml, "<Data>\n"); fprintf(xml, "<Coordinates>Left-handed Cartesian</Coordinates>\n"); fprintf(xml, "<X0>%fmm</X0>\n",pos[0][0]); fprintf(xml, "<Xstep>%fmm</Xstep>\n",pasX); fprintf(xml, "<Xmax>%fmm</Xmax>\n",pos[0][0]+length_x); fprintf(xml, "<Y0>%fmm</Y0>\n",pos[1][0]); fprintf(xml, "<Ystep>%fmm</Ystep>\n",pasY); fprintf(xml, "<Ymax>%fmm</Ymax>\n",pos[1][0]+length_y); fprintf(xml, "<Z0>1mm</Z0>\n"); fprintf(xml, "<Measurement>\n"); fprintf(xml,"<List>\n"); for (i=0;i<=length_x;i++) {//Boucle sur l'axe des X for (j=0;j<=length_y;j++) {//Boucle sur l'axe des Y //Boucle sur les fréquences for (k=0;k<nb_freq;k++) { // sauvegarde des coordonnées au format XML fprintf(xml,"\t%e\n",champ[k]); //fprintf(xml,"<br />"); } // Fin de la boucle des fréquences } // Fin de la boucle sur Y } // Fin de la boucle sur X fprintf(xml,"</List>\n"); fprintf(xml, "</Measurement>\n"); fprintf(xml, "</Data>\n"); fprintf(xml, "</EmissionScan>\n"); fclose(xml);
voici le fichier xml obtenu avec l'utilisation "\n":
Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 <?xml version="1.0" encoding="UTF-8" ?> - <EmissionScan> - <Data> <Coordinates>Left-handed Cartesian</Coordinates> <X0>0.000000mm</X0> <Xstep>1.000000mm</Xstep> <Xmax>4.000000mm</Xmax> <Y0>0.000000mm</Y0> <Ystep>1.000000mm</Ystep> <Ymax>4.000000mm</Ymax> <Z0>1mm</Z0> - <Measurement> <List>0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00</List> </Measurement> </Data> </EmissionScan>
et le resultat suivant avec l'utilisation de la balise <br/>
Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30 <?xml version="1.0" encoding="UTF-8" ?> - <EmissionScan> - <Data> <Coordinates>Left-handed Cartesian</Coordinates> <X0>0.000000mm</X0> <Xstep>1.000000mm</Xstep> <Xmax>4.000000mm</Xmax> <Y0>0.000000mm</Y0> <Ystep>1.000000mm</Ystep> <Ymax>5.000000mm</Ymax> <Z0>1mm</Z0> - <Measurement> - <List> 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 <br /> 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 <br /> 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 <br /> 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 <br /> 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 <br /> 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 <br /> </List> </Measurement> </Data> </EmissionScan>
or le but de mon application est d'avoir des données avec ce format (forme matricielle) mais sans les balises <br/> entres les lignes.
Quelqu'un peut-t-il m'aider svp.
Merci d'avance.
Partager