Java εγγραφή στο αρχείο

Java Write File



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

Μερικές απαραίτητες τάξεις και μέθοδος για τη σύνταξη αρχείου:

μέθοδος writeString ():

Αυτή η μέθοδος υποστηρίζεται από την Java έκδοση 11. Μπορεί να πάρει τέσσερις παραμέτρους. Αυτά είναι διαδρομή αρχείου, ακολουθία χαρακτήρων, σύνολο χαρακτήρων και επιλογές. Οι δύο πρώτες παράμετροι είναι υποχρεωτικές για την εγγραφή αυτής της μεθόδου σε ένα αρχείο. Γράφει τους χαρακτήρες ως το περιεχόμενο του αρχείου. Επιστρέφει τη διαδρομή του αρχείου και μπορεί να ρίξει τέσσερις τύπους εξαιρέσεων. Είναι καλύτερα να χρησιμοποιείται όταν το περιεχόμενο του αρχείου είναι σύντομο.







Κατηγορία FileWriter:

Εάν το περιεχόμενο του αρχείου είναι σύντομο, χρησιμοποιήστε το FileWriter Η κλάση για εγγραφή στο αρχείο είναι μια άλλη καλύτερη επιλογή. Γράφει επίσης τη ροή χαρακτήρων όπως το περιεχόμενο του αρχείου writeString () μέθοδος. Ο κατασκευαστής αυτής της κλάσης ορίζει την προεπιλεγμένη κωδικοποίηση χαρακτήρων και το προεπιλεγμένο μέγεθος buffer σε byte.



BuffredWriter Class:

Χρησιμοποιείται για τη σύνταξη κειμένου σε μια ροή χαρακτήρων. Έχει ένα προεπιλεγμένο μέγεθος buffer, αλλά το μεγάλο μέγεθος buffer μπορεί να εκχωρηθεί. Είναι χρήσιμο για τη γραφή χαρακτήρων, συμβολοσειρών και πίνακα. Είναι καλύτερα να τυλίξετε αυτήν την κλάση με οποιαδήποτε κλάση συγγραφέα για εγγραφή δεδομένων σε ένα αρχείο, εάν δεν απαιτείται γρήγορη έξοδος.



Κατηγορία FileOutputStream:

Χρησιμοποιείται για την εγγραφή ακατέργαστων δεδομένων ροής σε ένα αρχείο. Οι κλάσεις FileWriter και BufferedWriter χρησιμοποιούνται για την εγγραφή μόνο του κειμένου σε ένα αρχείο, αλλά τα δυαδικά δεδομένα μπορούν να γραφτούν χρησιμοποιώντας την κλάση FileOutputStream.





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

Παράδειγμα-1: Γράψτε σε ένα αρχείο χρησιμοποιώντας τη μέθοδο writeString ()

Το ακόλουθο παράδειγμα δείχνει τη χρήση του το stringString () μέθοδος που βρίσκεται κάτω από Αρχεία τάξη για εγγραφή δεδομένων σε ένα αρχείο. Μια άλλη τάξη, Μονοπάτι, χρησιμοποιείται για να εκχωρήσει το όνομα αρχείου με μια διαδρομή όπου θα γραφτεί το περιεχόμενο. Αρχεία Η κλάση έχει άλλη μέθοδο που ονομάζεται readString () για να διαβάσετε το περιεχόμενο οποιουδήποτε υπάρχοντος αρχείου που χρησιμοποιείται στον κώδικα για να ελέγξετε το περιεχόμενο είναι σωστά γραμμένο στο αρχείο.



εισαγωγή java.nio.file.Files?
εισαγωγή java.nio.file.Path?
εισαγωγή java.io.IOException?

δημόσιο τάξηfwrite1{

δημόσιο στατικός κενόςκύριος( Σειρά []αψίδες) ρίχνει IOException
{
// Εκχωρήστε το περιεχόμενο του αρχείου
Σειρά κείμενο= Καλώς ήρθατε στο Linuxhint nΜάθετε java από τα βασικά »?

// Ορίστε το όνομα αρχείου του αρχείου
Όνομα αρχείου διαδρομής=Μονοπάτι.του('file1.txt')?

// Γράψτε στο αρχείο
Αρχεία.writeString(όνομα αρχείου, κείμενο)?

// Διαβάστε το περιεχόμενο του αρχείου
Σειρά file_content=Αρχεία.readString(όνομα αρχείου)?

// Εκτυπώστε το περιεχόμενο του αρχείου
Σύστημα ΤοέξωΤοεκτύπωση(file_content)?
}
}

Παραγωγή:

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

Παράδειγμα-2: Γράψτε σε ένα αρχείο χρησιμοποιώντας την κλάση FileWriter

Το ακόλουθο παράδειγμα δείχνει τη χρήση της κλάσης FileWriter για εγγραφή περιεχομένου σε ένα αρχείο. Απαιτείται η δημιουργία του αντικειμένου της κλάσης FileWriter με το όνομα αρχείου για εγγραφή σε ένα αρχείο. Επόμενο, το γράψιμο () η μέθοδος χρησιμοποιείται για να γράψει την τιμή του κείμενο μεταβλητή στο αρχείο. Εάν παρουσιαστεί οποιοδήποτε σφάλμα κατά τη σύνταξη του αρχείου, τότε θα πεταχτεί ένα IOexception και το μήνυμα σφάλματος θα εκτυπωθεί από το μπλοκ αλιευμάτων.

// Εισαγωγή απαραίτητων πακέτων
εισαγωγή java.io.FileWriter?
εισαγωγή java.io.IOException?

δημόσιο τάξηfwrite2{

δημόσιο στατικός κενόςκύριος( Σειρά []αψίδες) {

// Εκχωρήστε το περιεχόμενο του αρχείου
Σειρά κείμενο= «Η τελευταία έκδοση Java περιέχει σημαντικές βελτιώσεις
για τη βελτίωση της απόδοσης »
+ «σταθερότητα και ασφάλεια της Java
εφαρμογές που εκτελούνται στο μηχάνημά σας. '
?
προσπαθήστε
{
// Δημιουργήστε ένα αντικείμενο FileWriter για εγγραφή στο αρχείο
FileWriter fWriter= νέος FileWriter ('file2.txt')?

// Γράψτε στο αρχείο
fWriter.γράφω(κείμενο)?

// Εκτυπώστε το μήνυμα επιτυχίας
Σύστημα ΤοέξωΤοΤυπώνω('Το αρχείο δημιουργείται με επιτυχία με το περιεχόμενο.')?

// Κλείσιμο του αντικειμένου συγγραφέα αρχείων
fWriter.Κλείσε()?
}
σύλληψη ( IOException Και)
{
// Εκτυπώστε το μήνυμα σφάλματος
Σύστημα ΤοέξωΤοΤυπώνω(Και.getMessage())?
}
}
}

Παραγωγή:

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

Παράδειγμα-3: Γράψτε σε ένα αρχείο χρησιμοποιώντας την τάξη BufferedWriter

Το ακόλουθο παράδειγμα δείχνει τη χρήση της κλάσης BufferedWriter για εγγραφή σε ένα αρχείο. Απαιτεί επίσης τη δημιουργία του αντικειμένου της κατηγορίας BufferedWriter όπως το FileWriter για να γράψετε περιεχόμενο στο αρχείο. Αλλά αυτή η κλάση υποστηρίζει μεγάλο περιεχόμενο για εγγραφή στο αρχείο χρησιμοποιώντας ένα μεγάλο μέγεθος buffer.

εισαγωγή java.io.BufferedWriter?
εισαγωγή java.io.FileWriter?
εισαγωγή java.io.IOException?
δημόσιο τάξηfwrite3{

δημόσιο στατικός κενόςκύριος( Σειρά []αψίδες) {

// Εκχωρήστε το περιεχόμενο του αρχείου
Σειρά κείμενο= «Μάθετε Java εύκολα από το LinuxHint»?

προσπαθήστε {

// Δημιουργήστε ένα αντικείμενο του BufferedWriter
BufferedWriter f_writer= νέος BufferedWriter (νέος FileWriter ('file3.txt'))?
f_writer.γράφω(κείμενο)?

// Εκτυπώστε το μήνυμα επιτυχίας
Σύστημα ΤοέξωΤοΤυπώνω('Το αρχείο δημιουργείται με επιτυχία με το περιεχόμενο.')?

// Κλείσιμο του αντικειμένου BufferedWriter
f_writer.Κλείσε()?
}
σύλληψη ( IOException Και)
{
// Εκτυπώστε το μήνυμα σφάλματος
Σύστημα ΤοέξωΤοΤυπώνω(Και.getMessage())?
}
}
}

Παραγωγή:

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

Παράδειγμα-4: Γράψτε σε ένα αρχείο χρησιμοποιώντας την κλάση FileOutputStream

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

εισαγωγή java.io.FileOutputStream?
εισαγωγή java.io.IOException?

δημόσιο τάξηfwrite4{

δημόσιο στατικός κενόςκύριος( Σειρά []αψίδες) {

// Εκχωρήστε το περιεχόμενο του αρχείου
Σειρά fileContent= 'Καλώς ορίσατε στο LinuxHint'?

προσπαθήστε {
// Δημιουργήστε ένα αντικείμενο του FileOutputStream
FileOutputStream ροή εξόδου= νέος FileOutputStream ('file4.txt')?

// αποθήκευση περιεχομένου byte από συμβολοσειρά
ψηφιόλεξη[]strToBytes=fileContent.getBytes()?

// Γράψτε στο αρχείο
ροή εξόδου.γράφω(strToBytes)?

// Εκτυπώστε το μήνυμα επιτυχίας
Σύστημα ΤοέξωΤοΤυπώνω('Το αρχείο δημιουργείται με επιτυχία με το περιεχόμενο.')?

// Κλείστε το αντικείμενο
ροή εξόδου.Κλείσε()?
}
σύλληψη ( IOException Και)
{
// Εκτυπώστε το μήνυμα σφάλματος
Σύστημα ΤοέξωΤοΤυπώνω(Και.getMessage())?
}
}
}

Παραγωγή:

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

Συμπέρασμα:

Πολλοί τρόποι εγγραφής σε ένα αρχείο εμφανίζονται σε αυτό το σεμινάριο χρησιμοποιώντας διαφορετικές κλάσεις Java. Ο χρήστης μπορεί να επιλέξει οποιαδήποτε από τις κλάσεις που αναφέρονται εδώ για εγγραφή σε ένα αρχείο με βάση το περιεχόμενο του αρχείου.