|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Member
Iscritto dal: Apr 2008
Messaggi: 86
|
[java] Leggere txt e mantenere stessa formattazione
Ciao, nn riesco a capire come posso mantenere la stessa formattazione di un .txt
Praticamente lo leggo, lo metto in una stringa e poi lo metto qui: Codice:
JTextArea textArea = new JTextArea(stringa); Codice:
while(filebuffer1.ready()){ lic+=(filebuffer1.readLine()); } mi mette il testo tutto attaccato, non riuscendo nenache a leggerelo. Ci sono altre componenti, o metodi di lettura, che mantengono la stessa formattazione del file di origine? |
![]() |
![]() |
![]() |
#2 | |
Senior Member
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
|
Supponendo che "filebuffer1" sia un BufferedReader, il motivo per cui non ottieni quello che desideri è il modo in cui opera il metodo .readLine()
Quote:
Devi inserire tu il terminatore di fine riga in coda alla String ricevuta. Per non creare mile-milla String (l'operatore + applicato a due String crea una terza String che è il risultato delle prime due concatenate; in Java gli oggetti String sono immutabili) nel tuo ciclo puoi dichiarare l'oggetto "lic" come una StringBuilder e usare il suo metodo .append() per concatenare la String restituita dal BufferedReader, ad esempio: Codice:
StringBuilder lic = new StringBuilder; while(filebuffer1.ready()){ String line = filebuffer1.readLine(); lic.append(line); // concateno la stringa letta dal buffer lic.append("\n"); // concateno il carattere di fine riga }
__________________
As long as you are basically literate in programming, you should be able to express any logical relationship you understand. If you don’t understand a logical relationship, you can use the attempt to program it as a means to learn about it. (Chris Crawford) Ultima modifica di banryu79 : 25-03-2009 alle 11:34. |
|
![]() |
![]() |
![]() |
#3 |
Senior Member
Iscritto dal: Nov 2004
Città: Tra Verona e Mantova
Messaggi: 4553
|
Leggi il file di testo tutto in una volta.
Codice:
Scanner in = new Scanner(il file txt).useDelimiter("\\Z"); try { String fullText = in.next(); } finally { in.close(); }
__________________
Uilliam Scecspir ti fa un baffo? Gioffri Cioser era uno straccione? E allora blogga anche tu, in inglese come me! |
![]() |
![]() |
![]() |
#4 |
Member
Iscritto dal: Apr 2008
Messaggi: 86
|
ok...
ora sembra andar bene! grazie mille ragazzi, ![]() |
![]() |
![]() |
![]() |
#5 | |
Senior Member
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
|
Quote:
Cos'è la stringa passata come parametro al metodo useDelimiter()? Una regular expression?
__________________
As long as you are basically literate in programming, you should be able to express any logical relationship you understand. If you don’t understand a logical relationship, you can use the attempt to program it as a means to learn about it. (Chris Crawford) |
|
![]() |
![]() |
![]() |
#6 |
Senior Member
Iscritto dal: Nov 2004
Città: Tra Verona e Mantova
Messaggi: 4553
|
Sì, è un'espressione regolare appartenente alla specie (rarissima) delle espressioni regolari "che si capiscono"
![]() \Z significa "fino alla fine dell'input, escluso il carattere che segnala la fine dell'input, se c'è". Diventa "\\Z" perchè \ è un carattere speciale nelle stringhe Java e per poterlo "scrivere in una stringa" bisogna usare l'escape '\'.
__________________
Uilliam Scecspir ti fa un baffo? Gioffri Cioser era uno straccione? E allora blogga anche tu, in inglese come me! |
![]() |
![]() |
![]() |
#7 | |
Senior Member
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
|
Quote:
![]() Grazie PGI ![]()
__________________
As long as you are basically literate in programming, you should be able to express any logical relationship you understand. If you don’t understand a logical relationship, you can use the attempt to program it as a means to learn about it. (Chris Crawford) Ultima modifica di banryu79 : 25-03-2009 alle 14:45. |
|
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 15:44.