Le fichier XML peut contenir des fichier ? - Divers - Programmation
Marsh Posté le 18-03-2004 à 09:58:46
Oui mais tu ne peux pas foutre des octets violemment comme ça. Il faut donc convertir tes données en Base64 avant et les inclure en faisant un truc genre <Fichier nom="plouf.pdf">données en Base64</Fichier>
Marsh Posté le 18-03-2004 à 10:08:56
Ouais enfin le coût est pas négligeable non plus : ton fichier pèsera 1,4 à 1,5 fois plus lourd une fois en Base64.
Marsh Posté le 18-03-2004 à 10:15:25
Taiche a écrit : Oui mais tu ne peux pas foutre des octets violemment comme ça. Il faut donc convertir tes données en Base64 avant et les inclure en faisant un truc genre <Fichier nom="plouf.pdf">données en Base64</Fichier> |
Pour faire propre, ça serait pas plutôt
<Fichier nom="plouf.pdf"><![CDATA[
données en Base64
]]></Fichier>
?
Marsh Posté le 18-03-2004 à 10:16:12
Oh ba si, c'est juste que c'est quelque chose que j'fais jamais donc j'ai pas tellement les mécanismes
Marsh Posté le 18-03-2004 à 10:33:51
Merde il faut pas qu'il prenne du poid sinon l'interet devient moins interressant !
.. En fait il faudrais que je puisse avoir un fichier qui en XML laisse paraitre les informations dites sans être separé du fichier texte qui l'accompagne
Marsh Posté le 18-03-2004 à 10:43:41
le surpoids de la base64 c +33%. L'encodage prend 3 octets et les transforme en 4 paquets de 6bits significatifs dans un octet. + padding evidememnt
Donc 100 octets deviennent (100/3) = 33*4+1 = 133 octets
Marsh Posté le 18-03-2004 à 11:04:16
Taiche a écrit : Oui mais tu ne peux pas foutre des octets violemment comme ça. Il faut donc convertir tes données en Base64 avant et les inclure en faisant un truc genre <Fichier nom="plouf.pdf">données en Base64</Fichier> |
Ca peut en effet marcher ainsi, mais il vaudrait mieux utiliser la technique XML prevue pour:
<Fichier nom="plouf.pdf"><![CDATA[données en Base64]]></Fichier>
Ca evitera au parser de chercher autre chose que ]]> dans tes données afin de voir ou se terminent tes données.
De toute facon, c'est pas dans l'esprit XML, ou tu adresses ce type de fichier comme une donnés externe accedée comme une entité.
Tu pourrais donc avoir un fichier avec un debut comme suir:
<!DOCTYPE MyDocumentType [
<!NOTATION pdf SYSTEM "pdfviewer.exe">
<!ENTITY plouf SYSTEM "plouf.pdf" NDATA pdf>
]>
tes données xml, avec l'appel au fichier
<Fichier auteur = "...">&plouf;</Fichier>
reste de tes données
Ou bien:
tes données xml, avec l'appel au fichier
<Fichier auteur = "..." file="plouf"/>
reste de tes données
Au cas ou ton modele de données pour Fichier le declare avec une declaration du style:
<!ELEMENT Fichier EMPTY>
<!ATTLIST Fichier file ENTITY #REQUIRED
auteur CDATA #IMPLIED
...>
Apres, si tu veux tout dans un seul fichier, il faut aller voir:
- Le format mhtml http://www.ietf.org/rfc/rfc2557.txt (c'est le .mht utilise parfois avec IE)
- Le format DZIP de topologi http://www.topologi.com/products/validator/dzip.html
- Des techniques a la SOAP
...
A+,
Marsh Posté le 18-03-2004 à 09:56:47
Bonjour !
J'aimerai savoir si un fichier XML peut contenir un autre fichier ?
Par exemple J'aimerai savoir si on peut faire ca avec un fichier XML
--------- debut
Nom du fichier =
Auteur =
Description =
Taille =
Fichier truc.pdf
###############################
###############################
###############################
###############################
Signature PGP =
----------fin
Merci