28. januar 2007 - 22:58Der er
35 kommentarer og 1 løsning
Hvorfor kan min kode ikke læse symboler fra en txt fil, rigtigt.
Jeg kan ikke få mit program til at læse # rigtigt. Min txt fil består kun af ( # , . ) men kan ikke få koden til at opfatte ("#") rigtigt. Hvad er der galt ???
Jeg har includeret mine imports og den del af koden hvor det går galt. Den kommer ind i den indereste "while(x > linelength)"-lykke, men jeg får kun 0'er i min matrix... hvorfor ???
"txt filen viser det den skal" - det kan vi ikke bruge til noget. Vil du svare på de spørgsmål jeg stiller, så kan du måske få hjælp. Gider du ikke, så er jeg heldigvis ligeglad.... :)
er dine "#" kun i starten af hver linie i din textfil?, hvis det er tilfældet vil de aldrig dukke op pga: while(!(line = in.readLine()).startsWith("#"))
Det med line og substring er ok - ikke så effektivt, men det virker nok.
Det med startsWith("#") skal du nok tænke lidt over. Der er ikke meget fidus i at skrive af fra noget gammel kode, uden at have nogen anelse om hvorfor.
erik: nej, det ved jeg godt... det er altid en god regel. Men ved at det virkede rigtig i den gamle kode og min matrix bliver fyld, bare kun o'er og det passer jo ikke lige med txt filen.
har lige testet den, den kom aldrig ind i den første lukke, og grunden til at du troede den blev fyldt med 0, er nok fordi det er "start" værdien i array'et
Din while løkke: while (!(line = in.readLine()).startsWith("#")) {
skal være: while ((line = in.readLine()).startsWith("#")) { (fjernet: !)
Men programmet gør hvad du be'r det om. Det ligner en skoleopgave, og jeg vil ikke bare sådan lige give dig løsningen. Du har arbejdet dig fint frem mod det der er nu, og du mangler kun den sidste "knast", så vidt jeg kan bedømme. Og du har fået nogle spor at gå efter. Det er vist sengetid her ;)
public int[][] readFile() { System.out.println("test"); int[][] matrix = new int[100][100]; try { StringBuffer sb = new StringBuffer(""); BufferedReader in = new BufferedReader(new FileReader(new File("c:/fil.txt"))); String line; int lineCounter = 0;
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.