aic007 Skrevet 11. mars 2007 Del Skrevet 11. mars 2007 (endret) Hei. Jeg klarer å skrive til fil og lese fra fil, men det er bare en fil som jeg selv har bestemt navnet på i min les fil og skriv til fil metode. Dette fungerer. Jeg har også programmert et JFileChooser vindu som skal åpne en fil, men problemet er bare det at når jeg åpner filen så er det ingenting som skjer. Jeg vil at data fra filen jeg har åpnet skal leses inn; f.eks. data som lå i tabeller og oversikt over alle registrerte brukere osv... Dette er koden min public String åpneFil() { filVelger.setCurrentDirectory( new File ( "." ) ); int resultat = filVelger.showOpenDialog( this ); if ( resultat == JFileChooser.APPROVE_OPTION ) { File fil = filVelger.getSelectedFile(); return fil.getPath(); } else return null; } Er det noe mer jeg kan legge inn i koden for å få den til å lese inn data i programmet mitt ? ( .dta filer ) Endret 11. mars 2007 av aic007 Lenke til kommentar
aic007 Skrevet 11. mars 2007 Forfatter Del Skrevet 11. mars 2007 Kan legge til at det er objekter som jeg skriver til fil. Bruker ObjectInputStream og ObjectOutputStream, men vet som sagt ikke helt åssen jeg skal få åpnet en fil for deretter å kunne få opp informasjon i skjemaene og tabellene. Lenke til kommentar
kjey Skrevet 11. mars 2007 Del Skrevet 11. mars 2007 (endret) Har det ikke helt klart forand meg hva du vil fram til... Vil du lese tekst fra en fil som velges av JFileChooser eller hva? Hvis du skal lese tekst fra en fil er det bare å bruke to klasser: FileReader reader = new FileReader("file location"); BufferedReader buffer = new BufferedReader(reader); Så kan du bruke metoden readLine() til buffer å kjøre igjennom og hente opp alt innholdet fra bufferet til en variabel ved hjelp av en while-løkke. Har på følelsen at det ikke er dette du vil fram til? Endret 11. mars 2007 av kjey Lenke til kommentar
aic007 Skrevet 12. mars 2007 Forfatter Del Skrevet 12. mars 2007 (endret) Hei. Det var dårlig beskrevet av meg. Å lese tekst fra en fil klarer jeg, men saken er at jeg har et grensesnitt som har en knapp som skal vise en tabell over alle registrerte brukere, når jeg trykker på knappen. Data om registrerte kunder har jeg lagt i en fil som ender med .dta ... Det jeg vil er at data skal komme i tabellen, når jeg åpner en annen fil som ender på .dta, men vet ikke åssen jeg skal få det til at "data kommer på riktig plass" når jeg åpner en fil. Endret 12. mars 2007 av aic007 Lenke til kommentar
kjey Skrevet 12. mars 2007 Del Skrevet 12. mars 2007 Hvordan har du lagret informasjon i filen? Lagrer du bare informasjonen som tekst? Kan du poste koden du bruker for å lagre? Ihvertfall det med at bare den ene type fil kan åpnes kan gjøres ved å lage en if setning som henter filen som er valgt og sjekker ved hjelp av en if-setning om den fyller kravene dine. Hvis true, så åpnes filen og leses inn i tabellen. Sitter på skolen så får ikke laget noe bra eksempel for deg, men håper du skjønner hva jeg mener. Du kan ta en titt på klassen String i API'et så finner du noen metoder som sjekker om f.eks. ".dta" finnes i strengen. Tror metoden "contains()" er den du leter etter? Kan sikkert hjelpe litt bedre når jeg er ferdig på skolen. Lenke til kommentar
aic007 Skrevet 13. mars 2007 Forfatter Del Skrevet 13. mars 2007 Hei. Jeg brukte følgende kode for å skrive til fil private void skrivTilFil() { try { ObjectOutputStream utfil = new ObjectOutputStream ( new FileOutputStream( "liste.data" ) ); utfil.writeObject( heltallsliste ); utfil.flush(); utfil.close(); } catch( NotSerializableException nse ) { lista.setText( nse.getMessage() ); } catch( IOException ioe ) { lista.setText( ioe.getMessage() ); } } Det er ikke så farlig. Problemet er løst men tusen takk for at du tok deg tid til å svare Lenke til kommentar
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å