Newsgroup: it.comp.java
Titolo: zippare una directory senza path assoluti

Salve a tutto il ng,
io ho la necessità di zippare una dir da codice java.
Ho usato il package java.util.zip e non ci sono problemi nell'operazione.
Il problema sono i path assoluti dei file. Mi spiego: io voglio
zippare /home/ale/miofile.txt e quindi gli passo a ZipEntry la suddetta
stringa. All'interno del file .zip che mi viene creato, miofile.txt mantiene
però l'intero path assoluto; se per caso quindi sono nella dir /tmp  e
faccio unzip
miofile.zip  il miofile.txt NON viene messo i /tmp/miofile.txt ma
in /tmp/home/ale/miofile.txt !!!!!!!
Io voglio quindi evitare che i file contenuti nel .zip non siano memorizzati
con i pathname assoluti di chi l'ha creato.
Per risolvere il problema ho provato a fare System.setProperty("user.dir",
"/home/ale");  ma non funziona, mi sono documentato e pare che NON si possa
cambiare la dir di lavoro della jvm in esecuzione.
Lanciare una nuova jvm (che esegua un main con il solo compito di zippare)
con la dir di lavoro cambiata? Sarebbe ok, ma mi da errore:
(sono nella dir /miadir e la classe main si chiama M)
java -Duser.dir=/home/ale M   -> eccezzione
Come risolvo la situazione?
Una soluzione che sia multi-piattaforma (non ditemi di lanciare pkzip :) )
Grazie mille in anticipo,
Ale
P.S.:
una cosuccia... qualcuno sa perchè il metodo
JFrame.setExtendedState(JFrame.MAXIMIZED_BOTH)
non funziona sotto linux (io ho una Debian Sid con Gnome 2.4)
In alternativa come faccio a sapere l'area dello schermo effettivamente
usabile (tenendo quindi conto della barra in basso & co. )?

Ciao, Alessandro!
Il giorno 05/06/2004 alle ore 15:49 hai scritto:
 AB> Mi spiego: io voglio zippare /home/ale/miofile.txt e quindi gli passo a
 AB> ZipEntry la suddetta stringa. All'interno del file .zip che mi viene
 AB> creato, miofile.txt mantiene però l'intero path assoluto;
E tu a ZipEntry passa solo il nome del file no ?
 AB> Una soluzione che sia multi-piattaforma (non ditemi di lanciare pkzip
Puoi lanciare zip che e' disponibile sia per Linux che per Windows.
 AB> una cosuccia... qualcuno sa perchè il metodo
 AB> JFrame.setExtendedState(JFrame.MAXIMIZED_BOTH)
 AB> non funziona sotto linux (io ho una Debian Sid con Gnome 2.4)
Installa la versione di Java piu' recente, ho scoperto di recente che su una
JVM 1.4.0 non funziona, mentre funziona sulla 1.4.2. A meno che non mi sia
sfuggito qualcos'altro.
Bye
-- 
There is no ignorance; There is knowledge.
http://www.maccasoft.com

 sia sfuggito qualcos'altro.
Boh, io ho la 1.4.2_03 e non va....
Grazie cmq per la risposta,
Alessandro 
-- 
----------------
email: 
el_contadin...@libero.it
---------------

Ciao, Alessandro!
Il giorno 05/06/2004 alle ore 18:35 hai scritto:
 AB> Si, fin qua ci arrivo anche io :) ma se chiaramente la mia directory di
 AB> lavoro è diversa da /home/ale (prendendo l'esempio di prima) ovviamente
 AB> mi dice che non trova il file... E a quanto pare non si può cambiare...
Ovviamente cosa ? Il nome in ZipEntry puo' essere qualsiasi, il file poi lo
comprimi leggendolo da uno stream, mica dalla ZipEntry.
 AB> Boh, io ho la 1.4.2_03 e non va....
Allora non lo so, cerchero' di indagare meglio visto che mi serve per alcuni
progetti nuovi che sto iniziando.
Bye
-- 
Fear leads to anger, anger leads to hate, hate leads to suffering.
http://www.maccasoft.com

 alcuni progetti nuovi che sto iniziando.
Se scopri qualcosa puoi farmi un fischio?
Grazie mille per l'aiuto,
Ciao
