De Java-taal biedt een scala aan keuzes voor het lezen en verwerken van input-bestanden . Met behulp van de " FileReader , " " BufferedReader " en Scanner klassen , kunt u lezen in de inhoud van een extern bestand in individuele lijnen . Zodra je hebt elke regel binnen uw programma , kunt u vervolgens gebruiken methoden van de klasse String te tokenize . Wanneer u tokenize een regel in uw bestand , kan uw programma de penningen slaan in arrays voor verdere verwerking . Tokenizering input-bestanden in Java is gebruikelijk en nuttig . Instructies Import 1 van de Java- hulpprogramma's voor uw bestandsinvoer operatie . De input -proces maakt gebruik van een paar klassen van de Java-taal , zodat de volgende import statements toe te voegen aan de bovenkant van uw Java-klasse bestand : import java.io. * ; import java.util.Scanner ; Dit geeft uw programma de mogelijkheid om het bestand te vinden , opent u het als een input -stroom , lezen in de inhoud , en ze vervolgens te verwerken . kopen van 2 Maak instanties van de ingang klassen die u nodig hebt . U moet proberen en blokkeert vangen aan uw programma toe te voegen , omdat de input en output operaties uitzonderingen kunnen gooien , waardoor je programma te mislukken , bijvoorbeeld als de input bestand dat u opgeeft niet kan worden gelokaliseerd . Voeg de volgende code toe aan uw programma : try { FileReader fr = new FileReader ( " testfile.txt " ) ; BufferedReader br = new BufferedReader ( fr ) ; Scanner scan = new Scanner (br ) ;//verdere verwerking hier } catch ( IOException bm ) { System.out.println ( ioe.getMessage ( ) ) ; } Deze code maakt instances van de klassen " FileReader , " " BufferedReader " en " scanner . " Deze objecten omgaan met het openen en lezen van een bestand . Alter de " FileReader " lijn naar de naam en locatie van uw eigen dossier weerspiegelen . Het blok catch instrueert Java om een standaardbericht uitvoeren als het programma een uitzondering gooit . 3 Maak een lus in het programma te blijven uitvoeren terwijl het bestand inhoud te lezen . Voeg de volgende code in je blok try : terwijl ( scan.hasNext ( ) ) { //proces iedere regel hier } scan.close ( ) ; Dit bereidt je programma aan het verwerken inhoud van het bestand in een while lus . Zodra de while lus eindigt uitvoeren , die zodra er niets meer in het bestand voor de scanner om te scannen zal zijn , de while-lus zal verlaten , en vervolgens de scanner kan sluiten . Scan 4 elke regel in het bestand . In je while lus , voeg de volgende code toe aan een regel telkens wanneer de lus uitvoert scannen : String thisLine = scan.nextLine ( ) ; Elke keer als de lus wordt uitgevoerd , zal het programma lees de volgende regel in een string variabele . Zodra u de lijn in uw programma , kunt u het uitvoeren van eventuele verwerking u nodig hebt, inclusief splitsen in tokens . 5 tokenize uw dossier lijnen . Voeg de volgende code , nog binnen de while lus , naar aanleiding van de lijn het lezen van de huidige regel in een string variabele : String [ ] lineTokens = thisLine.split ( " " ) ; dit voorbeeld splitst de lijn op de spatie , zodat elk element van de array zal bevatten wat er tussen ruimte tekens in het invoerbestand , bijvoorbeeld losse woorden . U kunt deze regel aanpassen naar uw eigen bestand aan te passen . Voeg eventueel verdere verwerking u nodig heeft voor uw tokens binnen de while lus . Zodra de lus eindigt uitvoeren , zal uw tokens niet langer toegankelijk .
|