Ciao a tutti,
come faccio a riaprire un file Txt e cominciare a scrivere da dove avevo lasciato, ovvero dall'ultima riga scritta.
grazie
ciao![]()
Ciao a tutti,
come faccio a riaprire un file Txt e cominciare a scrivere da dove avevo lasciato, ovvero dall'ultima riga scritta.
grazie
ciao![]()
Apri uno STREAM a quel File e poi guarda la funzione append() o qualocosa del genere della Classe File del package java.io
![]()
ok ciao ti ringrazio
Cosa significa?!? Non e' mica C++!!!Apri uno STREAM a quel File e poi guarda la funzione append() o qualocosa del genere della Classe File del package java.io
Crea un oggetto FileWriter, al costruttore passi il file che vuoi aprire (oppure una stringa che ne identifichi il percorso) e una varibile impostata a true che specifica la modalita' append
Es:
Cosi' puoi utilizzare fw per scrivere, a partire dalla fine del file.codice:File myFile = new File("prova.txt"); FileWriter fw = new FileWriter(myFile, true);
Ciao,
Lorenzo
in effetti non ho capito bene l'append, però siccome conosco il c++ ho pensato ci fosse anche in java e mi sono messo a cercarlo, ma niente.
grazie ciao
Altra domanda, quando io scrivo in un file
es.
out.write ("ciao")
come faccio ad andare a capo dopo questo out nel file.
se scrivo
out.write("ciao ");
out.write("mamma");
lui mi scrive
"ciao mamma"
ho provato anche ad introdurre dopo il ciao \n o \r
ma niente
![]()
append indica la modalita' di apertura di un file, assieme a read e write.
Nello specifico:
read apre un file in lettura, se il file non esiste si ha un errore;
write apre un file in scrittura, cancellando il contenuto precedente, se il file non esiste, viene creato;
append apre un file in lettura/scrittura, ma la scrittura comincia dal fondo del file, quindi non viene cancellato.
In Java tutto questo, pero', avviene in maniera trasparente al programmatore. In generale quando si crea un oggetto di tipo File non si specifica nessuna di queste modalita' in quanto esso, l'oggetto File, rappresenta solo un riferimento al file presente sul disco.
Per leggere o scrivere da/su un file si utilizzano oggetti di tipo FileReader e FileWriter, ed e' qui che, eventualmente, andrebbe impostata la modalita' di apertura. Tuttavia, avendo due classi diverse per la lettura e per la scrittura, e' inutile disinguere tra modalita' read e write, l'unica possibilita' e' appunto append, che consente di scrivere a partire dalla fine del file. Questa clausola va specificata nel momento in cui si crea l'oggetto FileWriter, specificandolo nel costruttore.![]()
Ciao,
Lorenzo
Per piacere qualcuno mi può rispondere al messaggio sopra quello riguardo a scrivere a capo in un documento.
grazie
Se stai programmando sotto windows, il ritorno a capo e' dato dall'insieme dei due caratteri \r\n (non so se sia importante l'ordine). Il carattere di fine riga dipende dalla piattaforma, per evitare di perderci del tempo, ti consiglierei di usare un PrintWriter, che fa la stampa formattata di quello che ti serve. Es:
Nel costruttore PrintWriter, ture sta ad indicare l'autoflush, cioe' non c'e' bisogno di chiamare flush() ogni volta che vuoi scrivere, lo fa automaticamente.codice:FileWriter fw = new FileWriter("prova.txt", ture); PrintWriter out = new PrintWriter(fw, true); fw.println("Ciao"); fw.println("Seconda riga");
Ciao,
Lorenzo
quindi venendo al punto per scrivere un file da dove l'ho lasciato basta che uso il FileWrite(nome file,ture);
???giusto??![]()
![]()
Il segreto della programmazione sta nella pazzia che cè in noi basta solo avere tempo per cercarla