Αναγνώστης Java (με παράδειγμα)

Σε αυτό το σεμινάριο, θα μάθουμε για το Java Reader, τις υποκατηγορίες του και τις μεθόδους του με τη βοήθεια ενός παραδείγματος.

Η Readerκλάση του java.ioπακέτου είναι μια αφηρημένη superclass που αντιπροσωπεύει μια ροή χαρακτήρων.

Εφόσον Readerείναι μια αφηρημένη τάξη, δεν είναι από μόνη της χρήσιμη. Ωστόσο, οι υποκατηγορίες του μπορούν να χρησιμοποιηθούν για την ανάγνωση δεδομένων.

Υποκατηγορίες του Αναγνώστη

Για να χρησιμοποιήσουμε τη λειτουργικότητα του Reader, μπορούμε να χρησιμοποιήσουμε τις υποκατηγορίες του. Κάποιοι από αυτούς είναι:

  • BufferedReader
  • InputStreamReader
  • Αναγνώστης αρχείων
  • StringReader

Θα μάθουμε για όλες αυτές τις υποκατηγορίες στο επόμενο σεμινάριο.

Δημιουργήστε έναν αναγνώστη

Για να δημιουργήσουμε ένα Reader, πρέπει java.io.Readerπρώτα να εισαγάγουμε το πακέτο. Μόλις εισαγάγουμε το πακέτο, εδώ είναι πώς μπορούμε να δημιουργήσουμε τον αναγνώστη.

 // Creates a Reader Reader input = new FileReader(); 

Εδώ, δημιουργήσαμε έναν αναγνώστη χρησιμοποιώντας την FileReaderτάξη. Είναι επειδή Readerείναι μια αφηρημένη τάξη. Ως εκ τούτου δεν μπορούμε να δημιουργήσουμε ένα αντικείμενο Reader.

Σημείωση : Μπορούμε επίσης να δημιουργήσουμε αναγνώστες από άλλες υποκατηγορίες του Reader.

Μέθοδοι αναγνώστη

Η Readerτάξη παρέχει διαφορετικές μεθόδους που εφαρμόζονται από τις υποκατηγορίες της. Ακολουθούν μερικές από τις κοινώς χρησιμοποιούμενες μεθόδους:

  • ready() - ελέγχει εάν ο αναγνώστης είναι έτοιμος για ανάγνωση
  • read(char() array) - διαβάζει τους χαρακτήρες από τη ροή και αποθηκεύει στον καθορισμένο πίνακα
  • read(char() array, int start, int length) - διαβάζει τον αριθμό χαρακτήρων ίσο με το μήκος από τη ροή και αποθηκεύει στον καθορισμένο πίνακα ξεκινώντας από την αρχή
  • mark() - επισημαίνει τη θέση στη ροή μέχρι την οποία έχουν διαβαστεί τα δεδομένα
  • reset() - επιστρέφει το στοιχείο ελέγχου στο σημείο της ροής όπου έχει οριστεί το σήμα
  • skip() - απορρίπτει τον καθορισμένο αριθμό χαρακτήρων από τη ροή

Παράδειγμα: Αναγνώστης χρησιμοποιώντας το FileReader

Εδώ είναι πώς μπορούμε να εφαρμόσουμε Readerχρησιμοποιώντας την FileReaderτάξη.

Ας υποθέσουμε ότι έχουμε ένα αρχείο με όνομα input.txt με το ακόλουθο περιεχόμενο.

 This is a line of text inside the file. 

Ας προσπαθήσουμε να διαβάσουμε αυτό το αρχείο χρησιμοποιώντας FileReader(μια υποκατηγορία Reader).

 import java.io.Reader; import java.io.FileReader; class Main ( public static void main(String() args) ( // Creates an array of character char() array = new char(100); try ( // Creates a reader using the FileReader Reader input = new FileReader("input.txt"); // Checks if reader is ready System.out.println("Is there data in the stream? " + input.ready()); // Reads characters input.read(array); System.out.println("Data in the stream:"); System.out.println(array); // Closes the reader input.close(); ) catch(Exception e) ( e.getStackTrace(); ) ) ) 

Παραγωγή

Υπάρχουν δεδομένα στη ροή; true Data στη ροή: Αυτή είναι μια γραμμή κειμένου μέσα στο αρχείο.

Στο παραπάνω παράδειγμα, δημιουργήσαμε έναν αναγνώστη χρησιμοποιώντας την FileReaderτάξη. Ο αναγνώστης συνδέεται με το αρχείο input.txt .

 Reader input = new FileReader("input.txt"); 

Για να διαβάσετε δεδομένα από το αρχείο input.txt , έχουμε εφαρμόσει αυτές τις μεθόδους.

 input.read(); // to read data from the reader input.close(); // to close the reader 

Για να μάθετε περισσότερα, επισκεφθείτε το Java Reader (επίσημη τεκμηρίωση Java).

ενδιαφέροντα άρθρα...