13. april 2003 - 11:47
Der er
11 kommentarer og 1 løsning
læsning af fil......
Hvordan refererer man til den fil man vil ha læst ved hjælp af FileReader ? try { FileReader file = new FileReader(eksempel.txt); ............. ............
Annonceindlæg tema
Offentlig digitalisering
Fra effektivisering til digital suverænitet. Hvordan skaber det offentlige en digital fremtid med AI, sikkerhed og kontrol i centrum?
13. april 2003 - 11:52
#1
Du mener formentligt: FileReader file = new FileReader("eksempel.txt"); Og den har ikke læst en fil. Den har åbnet en fil. Som du så kan læse fra med read metoden.
13. april 2003 - 11:56
#2
Den kan ikke finde filen, programmet ender med exeption "filen ikke fundet" public class Test { public static void main(String[] args) throws IOException { MemberTreeList trae = new MemberTreeList(); try { FileReader file = new FileReader(eksempel.txt); BufferedReader line = new BufferedReader(file); String linie = line.readLine(); while (linie != null){ trae.insert(linie, ""); linie = line.readLine(); } trae.visit(new MemberTreeVisitor()); } catch (FileNotFoundException e) { System.out.println("Kan ikke læse filen"); } } } data skal bruges i et binært søgetræ
13. april 2003 - 11:58
#3
Noget i retning af: import java.io.BufferedReader; import java.io.FileNotFoundException; import java.io.FileReader; import java.io.IOException; public class ReadTest { public static void main(String[] args) { try { BufferedReader r = new BufferedReader(new FileReader("TEST.CSV")); String line; while ((line = r.readLine()) != null) { System.out.println("line=" + line); } } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
13. april 2003 - 12:02
#4
Din kode compiler ikke hos mig. Det gør: import java.io.*; public class Test { public static void main(String[] args) throws IOException { //MemberTreeList trae = new MemberTreeList(); try { FileReader file = new FileReader("eksempel.txt"); BufferedReader line = new BufferedReader(file); String linie = line.readLine(); while (linie != null) { //trae.insert(linie, ""); linie = line.readLine(); } //trae.visit(new MemberTreeVisitor()); } catch (FileNotFoundException e) { System.out.println("Kan ikke læse filen"); } } } [du skal naturligvis ikke udkommentere tree, men jeg har ikke den klasse]
13. april 2003 - 12:08
#5
package binaere_traeer; import java.io.*; public class Test2 { public static void main(String[] args) throws IOException { MemberTreeList trae = new MemberTreeList(); try { FileReader file = new FileReader("eksempel.txt"); BufferedReader line = new BufferedReader(file); String linie = line.readLine(); while (linie != null) { trae.insert(linie, ""); linie = line.readLine(); } trae.visit(new MemberTreeVisitor()); } catch (FileNotFoundException e) { System.out.println("Kan ikke læse filen"); } } } Retunerer "kan ikke læse filen"
13. april 2003 - 12:12
#6
Prøv lig og erstat: } catch (FileNotFoundException e) { System.out.println("Kan ikke læse filen"); med: } catch (FileNotFoundException e) { e.printStackTrace(); og se hvad det giver.
13. april 2003 - 12:13
#7
Ligger eksempel.txt i det directory, hvor du kører programmet ? (hvis du kører i en IDE, så er det tit svært at vide hvor man egentligt kører henne) Måske skulle du have fuld sti på: FileReader file = new FileReader("C:\\dir\\subdir\\eksempel.txt");
13. april 2003 - 12:14
#8
java.io.FileNotFoundException: eksempel.txt (Den angivne fil blev ikke fundet) at java.io.FileInputStream.open(Native Method) at java.io.FileInputStream.<init>(FileInputStream.java:103) at java.io.FileInputStream.<init>(FileInputStream.java:66) at java.io.FileReader.<init>(FileReader.java:41) at binaere_traeer.Test2.main(Test2.java:11)
13. april 2003 - 12:15
#9
Ja det ligger i den samme pakke..
13. april 2003 - 12:16
#10
Du skal ikke forvente at programmet kører hvor Test.java ligger ! Prøv med fuld sti til filen.
13. april 2003 - 12:17
#11
har lige prøvet det virkede.... tak.... Det er bare ikke optimalt at hele stien skal stå der
13. april 2003 - 12:34
#12
Korrekt. Men du er i en udviklings-situation nu. Når programmet skal endeligt bruges er der flere muligheder: 1) Du samler applikationen på en sådan måde og laver et start script der gør at du kan undgå en absolutte sti. 2) Du sender filnavnet med over som argument til programmet. 3) Du pakker både kode og fil ned i en jar-fil og læser filen derfra (kræver nogle få kode-ændringer for at virke).
Kurser inden for grundlæggende programmering