Πρόγραμμα Java για δημιουργία συμβολοσειράς από περιεχόμενα ενός αρχείου

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

Για να κατανοήσετε αυτό το παράδειγμα, θα πρέπει να γνωρίζετε τις ακόλουθες εφαρμογές προγραμματισμού Java:

  • Συμβολοσειρά Java
  • Τάξη αρχείων Java

Πριν δημιουργήσουμε μια συμβολοσειρά από ένα αρχείο, υποθέτουμε ότι έχουμε ένα αρχείο με το όνομα test.txt στον φάκελο src .

Εδώ είναι το περιεχόμενο του test.txt

 Αυτό είναι ένα αρχείο δοκιμής.

Παράδειγμα 1: Δημιουργία συμβολοσειράς από αρχείο

 import java.io.IOException; import java.nio.charset.Charset; import java.nio.charset.StandardCharsets; import java.nio.file.Files; import java.nio.file.Paths; import java.util.List; public class FileString ( public static void main(String() args) throws IOException ( String path = System.getProperty("user.dir") + "\src\test.txt"; Charset encoding = Charset.defaultCharset(); List lines = Files.readAllLines(Paths.get(path), encoding); System.out.println(lines); ) )

Παραγωγή

 (Αυτό είναι ένα, αρχείο δοκιμής.)

Στο παραπάνω πρόγραμμα, χρησιμοποιούμε Systemτην user.dirιδιότητα για να αποθηκεύσουμε τον τρέχοντα κατάλογο στη μεταβλητή διαδρομή. Ελέγξτε το πρόγραμμα Java για να λάβετε τον τρέχοντα κατάλογο για περισσότερες πληροφορίες.

Χρησιμοποιήσαμε defaultCharset()για την κωδικοποίηση του αρχείου. Εάν γνωρίζετε την κωδικοποίηση, χρησιμοποιήστε την, αλλιώς είναι ασφαλές να χρησιμοποιήσετε την προεπιλεγμένη κωδικοποίηση.

Στη συνέχεια, χρησιμοποιήσαμε readAllLines()μέθοδο για την ανάγνωση όλων των γραμμών από το αρχείο. Παίρνει τη διαδρομή του αρχείου και την κωδικοποίησή του και επιστρέφει όλες τις γραμμές ως λίστα όπως φαίνεται στην έξοδο.

Επειδή readAllLinesμπορεί επίσης να ρίξει μια IOException, πρέπει να ορίσουμε την κύρια μέθοδο μας ως έχει

 public static void main (String () args) ρίχνει το IOException

Παράδειγμα 2: Δημιουργία συμβολοσειράς από ένα αρχείο

 import java.io.IOException; import java.nio.charset.Charset; import java.nio.file.Files; import java.nio.file.Paths; public class FileString ( public static void main(String() args) throws IOException ( String path = System.getProperty("user.dir") + "\src\test.txt"; Charset encoding = Charset.defaultCharset(); byte() encoded = Files.readAllBytes(Paths.get(path)); String lines = new String(encoded, encoding); System.out.println(lines); ) )

Παραγωγή

 Αυτό είναι ένα αρχείο δοκιμής.

Στο παραπάνω πρόγραμμα, αντί να λαμβάνουμε μια λίστα συμβολοσειρών, έχουμε μια μεμονωμένη συμβολοσειρά, γραμμές, με όλο το περιεχόμενο.

Για αυτό, χρησιμοποιήσαμε τη readAllBytes()μέθοδο για την ανάγνωση όλων των byte από τη δεδομένη διαδρομή. Αυτά τα byte στη συνέχεια μετατρέπονται σε συμβολοσειρά χρησιμοποιώντας την προεπιλεγμένη κωδικοποίηση.

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