PDA

Visualizza la versione completa : [Java] scrivere codice html da file txt


f4s4n0
11-06-2007, 13:34
ho del codice html in un file di testo....vorrei leggere questo file e poi aggiungere il codice letto in una pagina html in modo da modificare la pagina.
come faccio?
:dhò: :dhò:

LeleFT
11-06-2007, 13:46
Non vedo dove sia la difficcoltà: leggi il file di testo riga per riga e lo riscrivi nel secondo, apportando le modifiche che ti interessano...

La cosa mi suona troppo semplice: forse sarebbe il caso che tu fornissi ulteriori informazioni, sia sul file di testo, che sulla parte da modificare.


Inoltre non so se questo problema lo devi effettivamente risolvere in Java o se hai sbagliato sezione del forum...


Ciao. :ciauz:

f4s4n0
11-06-2007, 14:19
il problema devo affrontarlo in java.....ti mostro piu o meno quello che voglio fare....
il file path.html è quello a cui apportare le modifiche,il file code.txt è quello dove c'è il codice che devo aggiungere.

BufferedReader filebuf = new BufferedReader(new FileReader("path.html"));
BufferedReader codebuf=new BufferedReader(new FileReader("code.txt"))
String nextStr;
nextStr = filebuf.readLine(); // legge una riga del file
while (nextStr != null){
System.out.println(nextStr); // visualizza la riga
if(nextStr.compareTo("<body"){
se trovo quella stringa alla prossima riga voglio aggiungere ciò che c'è nel file di testo come faccio??
}
nextStr = filebuf.readLine(); // legge la prossima riga
}

nether
11-06-2007, 14:24
sei veramente sicuro e consapevole di dover fare quella cosa che dici tu?
no, chiedo, perche' magari si puo' trovare una soluzione alternativa al problema (che ne so, un tag "include" di jsp per esempio)...

puntino
11-06-2007, 14:29
Non vorrei dire una stupidaggine ma non puoi fare così:
la pagina html che devi modificare con il contenuto del file txt la fai diventare una pagina jsp.
Per invocare il contenuto del file txt nella pagina jsp puoi usare la direttiva include.
qui trovi degli esempi:
http://courses.coreservlets.com/Course-Materials/pdf/csajsp2/12-File-Inclusion.pdf
Ciao

f4s4n0
11-06-2007, 14:30
si sicuro.....a meno che nn hai altro modo di aggiungere del codice html(residente in un file.txt) a una pagina html senza dover creare una marea di tag a mano.

non posso modificare la pagina da html a jsp....mi serve che resti html.....

R@ve M@ster
11-06-2007, 14:43
Puoi fare così:

1) scorri il contenuto di path.html e salvi tutto il testo letto in una stringa (ad esempio string_path )
2) quando incontri il tag che ti interessa, cominci a scorrere il file code.txt aggiungendone il contenuto a string_path
3) giunto alla fine di code.txt, salvi la stringa string_path in un file (ad esempio path_temp.html)
4) cancelli path.html
5) rinomini path_temp.html in path.html

f4s4n0
11-06-2007, 14:50
Originariamente inviato da R@ve M@ster
Puoi fare così:

1) scorri il contenuto di path.html e salvi tutto il testo letto in una stringa (ad esempio string_path )
2) quando incontri il tag che ti interessa, cominci a scorrere il file code.txt aggiungendone il contenuto a string_path
3) giunto alla fine di code.txt, salvi la stringa string_path in un file (ad esempio path_temp.html)
4) cancelli path.html
5) rinomini path_temp.html in path.html

ma scusa se salvo il file html in una stringa i caratteri di a capo restano o li perdo e diventa un macello?e soprattutto come faccio una volta inocntrato body a aggiungere a partire dalla riga successiva(visto che per trovare body mi limito a trovare <body ma nn la chiusura del tag)??e cmq come faccio a salvare il contenuto di un file in una stringa?scusate l ignoranza ma sn un pò scarsino con la gestione file....

f4s4n0
11-06-2007, 15:07
grosso modo avevo pensato di fare cosi.....solo che nn so come andare a capo una volta trovato il tag body per poter scrivere dopo il carattere di chiusura(>) dello stesso....

BufferedReader filebuf = new BufferedReader(new FileReader("path.html"));
BufferedReader codebuf=new BufferedReader(new FileReader("code.txt"))

String nextStr;
nextStr = filebuf.readLine(); // legge una riga del file
while (nextStr != null){
System.out.println(nextStr); // visualizza la riga
if(nextStr.compareTo("<body"){

//apro il file da modif in scrittura
File f=new File("path.html");
FileOutputStream fos=new FileOutputStream(f,true);
PrintStream ps=new PrintStream(fos);
//leggo la prima riga del file contenente il codice
String newString=codebuf.readline();
//scrivo sul file html tutto il contenuto di code
while(newString!=null){
ps.println(newString);
newString=codebuf.readline();}
}
nextStr = filebuf.readLine(); // legge la prossima riga
}


ps: nn l ho provato... l ho scritto con notepad quindi magari c'è qualche errore

f4s4n0
12-06-2007, 08:56
nessuno mi sa aiutare?

Loading