PDA

Visualizza la versione completa : [JAVA] Lettura-scrittura formattata da/su file


mciasco
03-10-2005, 00:28
Salve,

sto cercando un modo per leggere e scrivere in maniera formattata da/su file.
Ad esempio in un file "congif.ini" ho:

[valore x] = 100
[valore y] = 200

in pratica ho dei campi che l'utente può modificare.

Ora nell'applicazione vorrei leggere una riga in modo formattato, ovvero ad esempio nella prima riga leggere solo 100 sapendo ovviamente che se trovo il campo "[valore x]" devo assegnare a x il valore 100.

In Java ho trovato PrintWriter e Reader ma scrivono e leggono stringhe intere senza possibilità di leggere o scrivere in modo foramttato.

Ad esempio in C si usano "fscanf" e "fprintf".
Per esempio se volevo leggere la riga di prima facevo:

fscanf(file_descriptor,"[valore x] = %d\n",&x);

che leggeva correttamente la riga e assegnava 100 ad x

Qualcuno conosce un modo simile in Java?

grazie

LeleFT
03-10-2005, 13:46
Per fare ciò che chiedi in Java è sufficiente leggere il file una riga alla volta e utilizzare uno StringTokenizer per spezzettare la stringa letta.
In aggiunta è possibile utilizzare il metodo split() della classe String, utilizzando il simbolo di uguale ( = ) come separatore:


BufferedReader br = new BufferedReader( new InputStreamReader( new FileInputString("mioFile.txt") ) );
String stringaLetta = br.readLine(); // Leggo una linea dal file
String [] result = stringaLetta.split("=");

// Ora result[1] conterrà il valore cercato:
System.out.println("Valore letto: " + result[1].trim());

Ciao. :ciauz:

Loading