LostOblivion Skrevet 17. september 2007 Skrevet 17. september 2007 Hei, Er det noen lettere måte å lese inn tall fra en fil med formatet 502.00402<tab>45.3002<tab>30.255<new line> 700.20036<tab>20.3049<tab>20.342<new line> enn å lese hver linje til en String og så splitte den opp igjen med \t som argument for så å bruke Double.parseDouble? Altså, det må være det, hehe!
kjey Skrevet 17. september 2007 Skrevet 17. september 2007 Jada, går ann det: import java.util.*; import java.io.*; public class Talleser { public static void main(String[] args) { String filnavn = "tallfil.txt"; try { FileReader forbindelse = new FileReader(filnavn); BufferedReader leser = new BufferedReader(forbindelse); Scanner scan = new Scanner(leser); while(scan.hasNext()) { System.out.println(scan.nextDouble()); } // Slutt while } catch(Exception e) { System.out.println("Søren også!"); } // Slutt try-catch } } Håper det hjelper
LostOblivion Skrevet 17. september 2007 Forfatter Skrevet 17. september 2007 Takk, kjære medstudent. "Hopper" den simpelt over tabene?
kjey Skrevet 18. september 2007 Skrevet 18. september 2007 Ja, den venter på at neste tall blir funnet.
LostOblivion Skrevet 18. september 2007 Forfatter Skrevet 18. september 2007 Ok, Scanner var veldig grei å bruke, men når det kommer til fart, var min egen versjon av klipp og lim raskere. Min brukte under et sek på å laste inn en fil på 85000 * 3 doubleverdier, mens Scanner brukte rundt 5 sek. Oo Tror det har noe med å gjøre at Scanner også må bruke Stringobjekter og bruke regex for å dele dem opp. Min splitregex bruker bare "\t", mens Scanner sin sikkert bruker <alt annet enn et double tall>, som går mye treigere. Jeg prøvde det og, ved å bytte ut "\t" med "\t|[, ]", og da går det med en gang treigere.
aC Skrevet 18. september 2007 Skrevet 18. september 2007 du kan jo prøve dobble char array'er istedet for string klasser Men hvis filen du skal lese inn fra konsekvent har \t så er det vel ingen grunn til å ikke bruke split() i stedet for scanner? Lagde en greie som eksporterte verdier fra et excel ark til en mysql database med \t og det fungerte fint fint.
LostOblivion Skrevet 18. september 2007 Forfatter Skrevet 18. september 2007 Jada, funker fint det, derfor har jeg det sånn nå, men tenkte kanskje det var en metode for å lese tall litt mer direkte, men når jeg tenkte over det, er jo alle filer faktisk filer med tegn (og ikke tall), så det blir ingen enklere måte å lese de på.
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå