Newsgroup: it.comp.java
Titolo: Scaricare localmente una pagina web...

Ciao! Ho scoperto che posso prendere una pagina web con l'oggetto URL e tenerla in memoria. Ma poi vorrei scriverla su disco locale: in pratica come se si premesse "Salva" dal browser. Come faccio? Immagino si faccia con un qualche OutputStream o simile...                           
Grazie: vi prego di rispondermi anche via e-mail a 
fma...@dada.it
, perche' le news non le leggo da casa per problemi di prestazioni..
CiaO!



ti mando il metodo per scrivere su un file ...
ti dovrebbe essere utile ... 
devi convertire la tua pagina in byte[] ... 
potrestri convertirla prima in una String xxx
e poi chiamare il metodo xxx.getBytes() ....
public static void salvoUnFile(String fileName,byte[] salva) throws
IOException {
 
      int size = 0;
      File f;
      try {
		      System.out.println("salvo il file ...."+ fileName  );
			FileOutputStream fis = new FileOutputStream(f = new File(fileName));
			// salvo il contenuto nel file ...
			fis.write(salva);
		      fis.flush();
			// chiudo il fileOutputStream...
			fis.close();
			System.out.println("chiuso il file ..." + fileName );
			}
			catch(Exception e){
				System.out.println("Errore in SALVOFILE: "+e+ fileName);
				throw new IOException(fileName);
				}//end try catch()
	}
fammi sapere se funziona! 
Ciao
-- 
"Fantasy is more important than knowledge" (A. Einstein)
!-----------------------------------------------------------!
!                        !      ____        _               !
!    NICOLA CUBEDDU      !     (  _ \      ( )              !
! Electronic Engineering !     | ( \/      | |              !
!  Student - University  !     | |    _  _ | (_   ____      !
!   of Cagliari - ITALY  !     | |   ( )( )|   \ (    )     !
!                        !     | (_/\| () || () )| () |     !
!                        !     (____/(____)(___/ (____)     !   
!                        !                                  !
!-----------------------------------------------------------!
! ICQ: 18266429                                             !
! 
http://www.fortunecity.com/westwood/givenchy/73/index.htm
 !
!-----------------------------------------------------------!

Per la N+1 esima volta:
Se si tratta di una applicazione non c'e' nessun problema, poiche' puoi leggere la pagina in uno StringBuffer, aprire un file su disco e salvarci il contenuto dello StringBuffer. Se invece si tratta di un applet la cosa e' ufficialmente impossibile,
generalmente difficile.
Gli applet sono soggetti alla famosa SandBox, per cui non sono autorizzati a scrivere sul disco, ma se usi un sistema di certificazione dell'applet allora e' l'applet stesso che ti chiede se gli permetti di scrivere sul disco NELLA DIRECTORY SPECIFICATA NEL
CODICE E IN NESSUN'ALTRA!!! Quando ti appare il dialogo di richeista dell'autorizzazione hai l'opzione di "ricordarti che glie la hai concessa" per cui l'applet non ti chiedera' piu' l'autorizzazione e la dara' per scontata MA SOLO PER QUELLA DIRECTORY!!!
Poi c'e' il fatto che IE4.0, che della violazione di sicurezza ha fatto una bandiera, che se ti abbassi tuta la sicurezza e gli dai una customizzazione (che per chi non fa l'anglofilo vuol dire personalizzazione) allora ti autorizza a scrivere tutto quello che
ti piace dove ti piace, tenendo presente che la directory di default (per windows) e' Windows\Desktop
Carlo.
PS: Quando io ero all'universita' di Milano -Informatica-  ci insegnavano la regola d'oro per iniziare a programmare in un qualsiasi linguaggio: RTFM = Read The Fucking Manual



| --
| Bruno Bossola
| Groupware/Intranet B.U.           Phone:  +39-11-2252211
| ATOS SpA v.Vaninetti 27           Fax:    +39-11-2203182
| I-10148 Torino ITALY              Change NOSPAM in atos to email me!

PS: Quando io ero all'universita' di Milano -Informatica-  ci insegnavano la regola d'oro per iniziare a programmare in un qualsiasi linguaggio: RTFM = Read The Fucking Manual
Io la sapevo diversamente: "quando tutto fallisce, leggi il
manuale..."
See You!
Matteo!!!