Læsning af fil med Java

Tags:    java

mit problem ligger i at jeg er i gang med java på skole periode, hvor vi skal lave en gui der kan rive bestemte info ud fra tekst fil kan kun få den til og læse sidste linje pt. Har haft fået den til at læse første også men ikke den midterste ville gerne kunne definere hvilken af de tre linjer den skal spytte ud det ud fra et textfield (byKodeText) her er mit kode

Skal lige sige det er rookie me der har skrevet det og undskyld på forhånd hvis mit spørgsmål er forkert skrevet

try {

Pattern pat = Pattern.compile(byKodeText.getText());
BufferedReader r = new BufferedReader(new FileReader("Forecast.txt"));
Matcher m = pat.matcher(r.readLine());

String linie;
while ((linie = r.readLine())!=null)
{
String[] ele = linie.split(" ", 1);
for (int i = 0; i<ele.length;i++)
jTextArea1.setText(ele);
System.out.println();



}
}

catch (IOException ex)
{
Logger.getLogger(Regularexpression.class.getName()).log(Level.SEVERE, null, ex);
}

}




5 svar postet i denne tråd vises herunder
2 indlæg har modtaget i alt 7 karma
Sorter efter stemmer Sorter efter dato
Prøv at bruge en java.util.Scanner i stedet for din BufferedReader... Min Java erfaring er ikke så stor, men det var den måde vi lærte at lave det på.

Et lille eks:

Fold kodeboks ind/udJava kode 



Noget helt andet er, er det meningen at du skal skrive linier til den samme tekstboks? For er det så ikke jTextArea1.setText(jTextArea1.getText() + text); ?

Btw, så er det fra et simpelt program der læser lotto-rækker fra en tekstfil til konsollen, derfor der er lidt der ikke er relevant et par steder - men en exception er en exception :P



Indlæg senest redigeret d. 27.11.2011 17:47 af Bruger #16372
Ja, en scanner er en udemærket ting til at scanne/læse fra en tekst fil. Jeg har evt. lavet en 'artikel/tutorial', som du kan læse her Java Programmering 11. Del

Husk foruden også at hver gang du 'åbner' og læser fra en fil er det en god vane at lukke den også, da den ellers kan ligge og tage plads i computerens memory osv. Tommelfingerreglen er at du skal huske at lukke filer og databaser, som du har åbnet, når du ikke bruger dem mere :)



Prøv at give os et minimalt eksempel, som illustrere fejlen, for jeg kan ikke se noget galt i det, du har lavet.
Lav en klasse med en main metode, som læser filen...og en fil, som den skal læse, og giv os det, så vi selv kan compile og køre programmet lokalt.



Det jeg har skrevet er bare inde under en jButton der skal søge i tekst filen efter den bykode jeg har indtastet i jTextField1 (byKodeText). ide´n i det hele er at man skal indtaste et 4 karakteres bykode og den skal der efter udtrække tre ting i linjen der passer til bykoden som skal smækkes i tre seperate textfields men kan kun få den til at læse første eller sidste linje undskyld hvis det ikke er fyldest gørende :S

indholdet i txt filen Forecast.txt er følgende hvor det jeg skal bruge er det understregede:
EKKA 241050Z 23011KT 2500 -DZ BR FEW003 BKN005 11/11 Q1022 TEMPO 3000 BKN004

EKAH 241050Z AUTO 23008KT 2700 180V270 8000NDV OVC007/// 11/09 Q1023

EKVD 241050Z 25015KT 7000 BKN008 11/10 Q1025




Tak for svar men min hjerne er bare brændt lidt sammen pt kan ikke få det til og gøre som jeg vil hehe :bounce:



t