|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Mar 2008
Messaggi: 401
|
[J2ME]Scrivere file di testo
Ho da poco iniziato a giocherellare con j2me, fino ad ora con i giochi, ora vorrei cimentarmi un pò anche con i prog.
Per iniziare volevo creare una specie di blocco note, che consente di scrivere e leggere file di testo, e memorizzarli nel formato txt, così da trasferirli su pc. Ora per leggerli faccio una cosa così: Codice:
public String leggiFileDiTesto(String file){ String str = null; InputStream is = this.getClass().getResourceAsStream(file); try { StringBuffer sb = new StringBuffer(); int chr, i = 0; // Legge tutto il file while ((chr = is.read()) != -1) sb.append((char) chr); str = sb.toString(); }catch (Exception e){ System.out.println("Unable to create stream"); } return str; } Ma per scrivere come devo fare? ![]() ![]() Scusate la domanda stupida. |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
|
Suppongo facendo il contratio di quello che hai fatto per la lettura, dove hai usato un InputStream.
Quindo scrivi il file, probabilmente sarai nella situazione di avere una String piena che rappresenta il contenuto del file: a quel punto dalla String recuperi i caratteri e li passi a un OutputStream che "punta" al file da scrivere.
__________________
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) |
![]() |
![]() |
![]() |
#3 |
Senior Member
Iscritto dal: Mar 2008
Messaggi: 401
|
Ma come faccio a creare una nuova risorsa?
Cioé all'InputStream faccio: Codice:
InputStream is = this.getClass().getResourceAsStream(file); |
![]() |
![]() |
![]() |
#4 |
Senior Member
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
|
Ciao,
non conosco J2ME, però se io dovessi scrivere un file di testo in J2SE userei la classe FileWriter, se invece dovessi scriverci dei raw byte userei FileOutputStream. Questo perchè OutputStrem in J2SE è una abstract class e non può essere istanziata: ecco perchè non prevede neanche, ne nel costruttore ne in altri suoi metodi, un parametro che specifichi per esempio che lo stream va a finire nel tal file alla tal posizione. Ecco la pagina dei javadoc per FileWriter
__________________
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) |
![]() |
![]() |
![]() |
#5 |
Senior Member
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12112
|
Devi usare la FileConnection API - jsr 75.
In particolare tramite il Connector ti ricavi un oggetto da castare a FileConnection mettendo il percorso corretto e quindi dal FileConnection ottieni Input e Output Stream. http://www.forum.nokia.com/info/sw.n..._0_en.zip.html
__________________
![]() |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 21:50.