Newsgroup: it.comp.programmare.win32
Titolo: Quesito su XML

Salve,
innanzitutto scusatemi qualora fossi OT, in questo caso potreste
indicarmi il gruppo più adatta dove postare?
Cmq vorrei sapere se e' fattibile l'operazione seguente.
Premetto che ho già trovato una piccola libreria Cross-Platform del
parser e la funzione di de/codifica in b64 in C++
Supponendo di avere un file <5Mb (.exe .zip .jpg) sarebbe possibile,
dopo averlo dato in pasto ad una funzione
che lo codifica in b64, inserirlo in un file XML.
Visto che i files .xml sono in definitiva dei files testuali, non ci
dovrebbero essere problemi di sorta a spedirli via email
o stamparli.
Mi rendo conto che tutto cio' è macchinoso, ma vorrei che qualcuno che
abbia già lavorato con l'Xml in c++/win32 mi desse un parere.
Grazie
Joe

 abbia già lavorato con l'Xml in c++/win32 mi desse un parere.
Qui direi che il problema non è c++ né win32, ma la tua idea. Perché
vorresti mandare 5 mega di binari encodati in un file XML via email?
-- 
Lawrence, 
oluyede.org
 - 
neropercaso.it
"It is difficult to get a man to understand 
something when his salary depends on not
understanding it" - Upton Sinclair


grazie Lawrence Oluyede per la repentina risposta.
Solo per vedere se è fattibile. Sto studiando un po' di XML.
Cmq volevo fare un raffronto.
Supp di avere un file exe di 1Mb, volevo rendermi conto quanto occupa
su Hd una volta
processato(exe->b64->xml) e zippato rispetto al semplice originale
zippato.
Mi rendo conto che sto' procedimento è una sega mentale, ma dovendo
imparare un po' di Xml
volevo fare qulacosa oltre al paio di tags per creare, ad es. un
elenco di libri.
Bye
Joe

 elenco di libri.
Ok imparare XML (avrei da "ridire" anche su questo ma passo), però mi
pare che tu abbia un po' di confusione in testa. Vediamo di chiarirci:
- un .exe è un .exe, un binario con un payload e una serie di
informazioni binarie che solo il sistema operativo (Windows in questo
caso) possono comprendere. Se prendi un .exe e lo piazzi su Linux e OSX
è e rimane un binario, anche se Linux e/o OSX non possono da soli
eseguire l'applicazione rappresentata dall'eseguibile Windows perché
usano entrambi formati diversi e hanno un set di API diverse.
- XML è _solo_ e ripeto _*SOLTANTO*_ un formato per la rappresentazione
di informazioni in formato testuale. Un file XML è un file di testo e in
quanto tale puo' essere processato piuttosto facilmente dalle suddette 3
piattaforme e da molto altro. Basta avere delle primitive per leggere un
file di testo e il resto lo si può fare anche programmaticamente (quello
che fanno i parser XML in sostanza).
Detto questo ci sono cose che non quadrano. Ok che XML è uno standard
super abusato ma rimane comunque quello che Tim Bray e il resto del team
pensarono di creare: un modo standard per portare in giro informazioni
(è comunque un formato per le macchine, non per gli umani anche se c'è
chi direbbe il contrario)
Spiegami, alla luce di quanto detto, cosa intendi per processare un file
binario (exe in questo caso) ?


 di informazioni in formato testuale.
Su questo siamo perfettamente daccordo
Cmq il mio intento era quello di cercare di ridurre le dimensioni del
file da spedire.
Speravo che essendo puro testo, la compressione (con winzip, winrar,
7zip o simili)
fosse più efficente. Ma dopo aver fatto qualche prova ho visto che il
guadagno è minimo o addirittura
il file generato con b64 ha dimensioni maggiori dell'originale.
Grazie
Joe

 il file generato con b64 ha dimensioni maggiori dell'originale.
L'immaginavo :-)
http://en.wikipedia.org/wiki/LZW#Example
