Domanda Problema Programma per calcolo Codice Fiscale

Stato
Discussione chiusa ad ulteriori risposte.

_DaNieL_

Utente Silver
22 Luglio 2014
299
15
26
95
Salve a tutti,Sto scrivendo un programma per la scuola che dati il
-Nome
-Cognome
-Luogo di Nascita
-Giorno
-Mese
-Anno
-Sesso
Mi calcoli automaticamente il codice fiscale
Il problema mi sorge quando devo far andare ad aprire un file .txt al programma per il controllo del luogo di nascita
Il .txt è cosi strutturato:
COMUNE CODICERELATIVO
Per fare il confronto tra il luogo inserito dall'utente e il comune net file uso il .equals,salvando il luogo dell utente in una stringa chiamata luogo e salvo il comune del txt prima in un array di caratteri e poi trasformandolo in una stringa(Ad es.Comune)
Quindi:
if(luogo.equals(Comune)){
//fai quello che voglio
}else{
//vai alla stringa successiva
}
Come mi consigliate di fare??
 
se hai java 6, prova così:
Java:
try(BufferedReader rr=new BufferedReader(new FileReader(nomefile.txt))){
 String riga=rr.readLine();
 boolean trov=false;
 while(riga!=null){
  if(riga.startsWith(comune)){
   trov=true;
   break;
}
riga=rr.readLine();
}
if(!trov)
return null;//non trovato
return riga.substring(riga.indexOf(" ")+1,riga.lenght());
}
catch(IOException e){
...
}
 
se hai java 6, prova così:
Java:
try(BufferedReader rr=new BufferedReader(new FileReader(nomefile.txt))){
String riga=rr.readLine();
boolean trov=false;
while(riga!=null){
  if(riga.startsWith(comune)){
   trov=true;
   break;
}
riga=rr.readLine();
}
if(!trov)
return null;//non trovato
return riga.substring(riga.indexOf(" ")+1,riga.lenght());
}
catch(IOException e){
...
}
Quel comando:
Riga.starstwith;
Controlla la riga fino al primo spazio??
 
Quindi sei io nella variabile comune mettessi "Abano Terme",lui controlla se la stringa inizia con "Abano Terme"?
 
Sì, ed ora che mi ci fai pensare ho commesso un errore nel codice:
Java:
...
return riga.substring(riga.indexOf(" ")+1,riga.lenght());
...
al posto di indexOf(" ") utilizza lastIndexOf(" "): la prima funzione ritorna l'indice del primo spazio, la seconda l'ultimo spazio (ricordati però di non far terminare le righe con uno spazio)
 
Salve a tutti,Sto scrivendo un programma per la scuola che dati il
-Nome
-Cognome
-Luogo di Nascita
-Giorno
-Mese
-Anno
-Sesso
Mi calcoli automaticamente il codice fiscale
Il problema mi sorge quando devo far andare ad aprire un file .txt al programma per il controllo del luogo di nascita
Il .txt è cosi strutturato:
COMUNE CODICERELATIVO
Per fare il confronto tra il luogo inserito dall'utente e il comune net file uso il .equals,salvando il luogo dell utente in una stringa chiamata luogo e salvo il comune del txt prima in un array di caratteri e poi trasformandolo in una stringa(Ad es.Comune)
Quindi:
if(luogo.equals(Comune)){
//fai quello che voglio
}else{
//vai alla stringa successiva
}
Come mi consigliate di fare??
Risolto?
 
Stato
Discussione chiusa ad ulteriori risposte.