Java tilbyr en rekke klasser du kan bruke i dine programmer når du trenger å lese eksterne data . Den Scanner -klassen kan du lese innspill fra filer , inkludert tallverdier. Ved hjelp av denne klassen i forbindelse med looper, kan Java- programmer lese flere elementer av data . Den Scanner klassen kan lese individuelle tall inkludert dobbel presisjon , flyttall , korte og heltall typer. Du kan derfor velge en metode som passer dine data , plassere koden i en loop , slik at den kan lese flere numre når programmet utfører . Instruksjoner
en
Importer Java input og output ressursene du trenger å lese dine eksterne data . Legg til følgende import uttalelser på toppen av din klasse erklæring : en
//input output libraryimport java.io. * ;//scanner classimport java.util.scanner ;
Disse ressursene gir din programmet alt den trenger for å behandle og håndtere innspill fra eksterne kilder som tekstfiler .
2
Create " prøve" og "fange" blokker for nummeret ditt lesing drift. Når du bruker input og output ressurser i Java , må du forberede for eventuelle feil som kan oppstå hvis de eksterne data ikke kan leses . Legg til følgende kode til programmet : en
try { //antall lesing her } fangst ( fangst ( IOException numReadExc ) { System.out.println ( " Unntak: " + numReadExc.getMessage ( ) ); }
Når koden kjøres , vil henrettelsen umiddelbart flytte til catch-blokken dersom noe går galt med innspill drift . Du kan plassere din fil lesing kode inne i try -blokken.
3
instantiate innspill gjenstander som er nødvendige for nummeret ditt leseprosessen Legg til følgende kode inni try -blokken, erklærte og forekomster et objekt av FileReader typen : .
FileReader numFileReader = new FileReader ( " datafile.txt " ;) ;
Alter parameteren til konstruktøren metode for å matche navn og plassering av datafilen i forhold til programmet Legg til følgende kode , noe som skaper et objekt av BufferedReader klasse : en
. BufferedReader numBuffer = new BufferedReader ( numFileReader ) ;
Denne klassen tar en instans av FileReader klassen som en parameter Legg til følgende kode , erklærte og forekomster en Scanner objekt : en
Scanner numScan = ny . Scanner ( numBuffer ) ;
Scanner konstruktør tar en BufferedReader som en parameter
4
Lag en løkke på din for lesing prosedyre Inside din try -blokken, etter at objektet instantiation koden . . , legger du til følgende løkke disposisjon : en
while ( numScan.hasNext ( ) ) { //lese tallene her }
Denne sløyfen vil bare fortsette å kjøre mens filen fortsatt har data som skal leses. inne i loop, kan du legge inn koden instruere Scanner å lese tall fra ekstern kilde. Når koden er ferdig å lese alt i filen , vil løkken stanse henrettelsene .
5
Les numrene fra den . fil Du må velge riktig skanner metode for nummertypene følgende eksempelkode vil lese heltall innenfor sløyfen : .
int currInt = numScan.nextInt ();
Du kan velge fra metoder for å lese double, float , lange, korte , BigInteger og BigDecimal tall Du kan utføre noen behandling som trengs på dine tall inne i løkken Etter loop, lukker skanner som følger: . .
numScan.close ();
Lagre filen og kjør programmet for å teste det
.