PDA

View Full Version : [JAVA][HTML]Importare codice HTML scritto su un file .txt


Lord_Brisingr
25-12-2014, 23:30
Salve a tutti, stavo provando a scrivere del codice al fine di far scrivere su una pagina HTML una frase sbarrata.
il codice è il seguente:

int Numero=0;
String cio="";
try
{
if(Numero==0)
{

FileWriter prova = new FileWriter("obiettivo.txt");
BufferedWriter a = new BufferedWriter(prova);
a.write("sbloccato");
a.flush();
a.close();
}
//else inutile, ma mi sembrava utile scriverlo per un altro scopo
else
{
FileWriter prova = new FileWriter("obiettivo.txt");
BufferedWriter a = new BufferedWriter(prova);
a.write("");
a.flush();
a.close();
}


}
catch(Exception e)
{}
try
{
FileReader z = new FileReader("obiettivo.txt");
BufferedReader c = new BufferedReader(z);
cio = c.readLine();
if(cio!=null)
{
FileWriter prova = new FileWriter("obiettivi.txt");
BufferedWriter a = new BufferedWriter(prova);
a.write("<strike><p>QUI TESTO</p></strike>");
a.flush();
a.close();
}
else
{
}
}
catch(Exception e)
{
System.out.println("file 'obiettivo.txt' non trovato");
}

Scopo del seguente codice è di aprire un foglio e scriverci "sbloccato", poi controllare se il foglio è stato scritto, in tal caso scrive "<strike><p>QUI TESTO</p></strike>" su di un altro foglio e lo importa su di un file con codice HTML tramite il tag <object>, solamente che sul browser me lo ristampa come scritto sul file .txt invece che sbarrato (cioè ristampa proprio "<strike><p>QUI TESTO</p></strike>"). Ci sarebbe un modo per far sì che il codice HTML che viene scritto sul foglio .txt venga 'tradotto' sul browser? Magari usando un altro tag invece che <object>. Spero di esser stato chiaro, grazie a tutti.

Daniels118
29-12-2014, 09:31
Non puoi scrivere il contenuto del file direttamente sulla pagina invece di utilizzare il tag object?

Comunque credo che dipenda dal content-type negli header di risposta, se c'è scritto text/html il browser lo interpreta come html, altrimenti... beh, è ovvio.
Immagino che l'application server abbia un file di configurazione nel quale sono elencati i mime type, ai file *.txt deve essere associato il tipo text.
Premesso che è sconsigliabile modificare questo file perché poi tutti i file *.txt verrebbero influenzati, potresti:
- modificare l'estensione del file in "html";
oppure:
- mappare l'url del file su una servlet che non fa altro che inviare il file in output modificando però l'header content-type.

Edit: il tag object ha un attributo "type", prova a valorizzarlo con "text/html".