Java menulis ke fail

Java Write File



Untuk menyimpan data secara sementara atau kekal untuk tujuan pengaturcaraan, kita perlu menulis data ke fail. Terdapat banyak kelas dan kaedah di Java untuk menulis data dalam fail. Bagaimana kelas dan kaedah yang berbeza dapat digunakan di Java untuk menulis data dalam file ditunjukkan dalam tutorial ini.

Beberapa kelas dan kaedah yang diperlukan untuk menulis fail:

kaedah writeString ():

Kaedah ini disokong oleh Java versi 11. Ia boleh mengambil empat parameter. Ini adalah laluan fail, urutan watak, charset, dan pilihan. Dua parameter pertama adalah wajib bagi kaedah ini untuk menulis ke dalam fail. Ia menulis watak sebagai kandungan fail. Ia mengembalikan jalan fail dan boleh membuang empat jenis pengecualian. Lebih baik digunakan apabila kandungan failnya pendek.







Kelas FileWriter:

Sekiranya kandungan fail pendek, maka gunakan Penulis Fail kelas untuk menulis dalam fail adalah pilihan lain yang lebih baik. Ia juga menulis aliran watak seperti kandungan fail tulisString () kaedah. Pembina kelas ini menentukan pengekodan watak lalai dan ukuran penyangga lalai dalam bait.



Kelas BufferedWriter:

Ia digunakan untuk menulis teks ke aliran output watak. Ini memiliki ukuran penyangga lalai, tetapi ukuran penyangga besar dapat ditetapkan. Ia berguna untuk menulis watak, rentetan, dan susunan. Lebih baik membungkus kelas ini dengan kelas penulis mana pun untuk menulis data ke fail jika tidak diperlukan output yang cepat.



Kelas FileOutputStream:

Ia digunakan untuk menulis data aliran mentah ke fail. Kelas FileWriter dan BufferedWriter digunakan untuk menulis teks ke fail sahaja, tetapi data binari dapat ditulis dengan menggunakan kelas FileOutputStream.





Contoh berikut menunjukkan penggunaan kaedah dan kelas yang disebutkan.

Contoh-1: Tulis ke fail menggunakan kaedah writeString ()

Contoh berikut menunjukkan penggunaan theString tulis () kaedah yang berada di bawah Fail kelas untuk menulis data ke dalam fail. Kelas lain, Jalan, digunakan untuk menetapkan nama fail dengan jalan di mana kandungannya akan ditulis. Fail kelas mempunyai kaedah lain yang dinamakan bacaString () untuk membaca kandungan fail yang ada yang digunakan dalam kod untuk memeriksa kandungan ditulis dengan betul dalam fail.



mengimport java.nio.file.Files;
mengimport java.nio.file.Path;
mengimport java.io.IOException;

awam kelasfwrite1{

awam statik batalutama( Tali []berhujah) balingan Pengecualian IO
{
// Tetapkan kandungan fail
Tali teks= 'Selamat datang ke Linuxhint nBelajar java dari asas ';

// Tentukan nama fail fail
Nama fail jalan=Jalan.daripada('fail1.txt');

// Tulis ke dalam fail
Fail.tulisString(nama fail, teks);

// Baca isi fail
Tali fail_content=Fail.membacaString(nama fail);

// Cetak kandungan fail
Sistem .keluar.println(fail_content);
}
}

Pengeluaran:

Output berikut akan muncul setelah menjalankan kod. Di sini, dua baris ditulis dalam fail yang ditunjukkan dalam output.

Contoh-2: Tulis ke fail menggunakan kelas FileWriter

Contoh berikut menunjukkan penggunaan kelas FileWriter untuk menulis kandungan ke dalam fail. Ia memerlukan untuk membuat objek kelas FileWriter dengan nama fail untuk menulis ke dalam fail. Seterusnya, tulisan () kaedah digunakan untuk menulis nilai teks pemboleh ubah dalam fail. Sekiranya terdapat ralat semasa menulis fail, maka pengecualian IO akan dilemparkan, dan mesej ralat akan dicetak dari blok tangkapan.

// Import pakej yang diperlukan
mengimport java.io.FileWriter;
mengimport java.io.IOException;

awam kelasfwrite2{

awam statik batalutama( Tali []berhujah) {

// Tetapkan kandungan fail
Tali teks= 'Versi Java terbaru mengandungi peningkatan penting
untuk meningkatkan prestasi, '
+ 'kestabilan dan keselamatan Jawa
aplikasi yang dijalankan pada mesin anda. '
;
cuba
{
// Buat objek FileWriter untuk ditulis dalam fail
Penulis Fail fWriter= baru Penulis Fail ('fail2.txt');

// Tulis ke dalam fail
fWriter.menulis(teks);

// Cetak mesej kejayaan
Sistem .keluar.mencetak('Fail berjaya dibuat dengan kandungannya.');

// Tutup objek penulis fail
fWriter.tutup();
}
tangkap ( Pengecualian IO Dan)
{
// Cetak mesej ralat
Sistem .keluar.mencetak(Dan.getMessage());
}
}
}

Pengeluaran:

Sekiranya kandungan fail berjaya ditulis dalam fail, maka output berikut akan muncul. Anda boleh memeriksa folder projek untuk mengesahkan bahawa fail dibuat dengan betul atau tidak.

Contoh-3: Tulis ke fail menggunakan kelas BufferedWriter

Contoh berikut menunjukkan penggunaan kelas BufferedWriter untuk menulis ke dalam fail. Ia juga memerlukan untuk membuat objek kelas BufferedWriter seperti FileWriter untuk menulis kandungan ke dalam fail. Tetapi kelas ini menyokong kandungan besar untuk menulis ke dalam fail dengan menggunakan ukuran penyangga yang besar.

mengimport java.io.BufferedWriter;
mengimport java.io.FileWriter;
mengimport java.io.IOException;
awam kelasfwrite3{

awam statik batalutama( Tali []berhujah) {

// Tetapkan kandungan fail
Tali teks= 'Belajar Java dengan mudah dari LinuxHint';

cuba {

// Buat objek BufferedWriter
Penulis Buffered f_penulis= baru Penulis Buffered (baru Penulis Fail ('fail3.txt'));
f_penulis.menulis(teks);

// Cetak mesej kejayaan
Sistem .keluar.mencetak('Fail berjaya dibuat dengan kandungannya.');

// Tutup objek BufferedWriter
f_penulis.tutup();
}
tangkap ( Pengecualian IO Dan)
{
// Cetak mesej ralat
Sistem .keluar.mencetak(Dan.getMessage());
}
}
}

Pengeluaran:

Sekiranya kandungan fail berjaya ditulis dalam fail, maka output berikut akan muncul. Anda boleh memeriksa folder projek untuk mengesahkan bahawa fail dibuat dengan betul atau tidak.

Contoh-4: Tulis ke fail menggunakan kelas FileOutputStream

Untuk menulis data ke dalam fail menggunakan kelas FileOutputStream ditunjukkan dalam contoh berikut. Ia juga memerlukan untuk membuat objek kelas dengan nama fail untuk menulis data ke dalam fail. Di sini, kandungan rentetan ditukar menjadi larik byte yang ditulis ke dalam fail dengan menggunakan tulis () kaedah.

mengimport java.io.FileOutputStream;
mengimport java.io.IOException;

awam kelasfwrite4{

awam statik batalutama( Tali []berhujah) {

// Tetapkan kandungan fail
Tali failContent= 'Selamat Datang ke LinuxHint';

cuba {
// Buat objek FileOutputStream
FileOutputStream outputStream= baru FileOutputStream ('fail4.txt');

// simpan kandungan bait dari rentetan
bait[]strToBytes=failContent.getBytes();

// Tulis ke dalam fail
outputStream.menulis(strToBytes);

// Cetak mesej kejayaan
Sistem .keluar.mencetak('Fail berjaya dibuat dengan kandungannya.');

// Tutup objek
outputStream.tutup();
}
tangkap ( Pengecualian IO Dan)
{
// Cetak mesej ralat
Sistem .keluar.mencetak(Dan.getMessage());
}
}
}

Pengeluaran:

Sekiranya kandungan fail berjaya ditulis dalam fail, maka output berikut akan muncul. Anda boleh memeriksa folder projek untuk mengesahkan bahawa fail dibuat dengan betul atau tidak.

Kesimpulan:

Pelbagai cara untuk menulis ke dalam fail ditunjukkan dalam tutorial ini dengan menggunakan kelas Java yang berbeza. Pengguna boleh memilih mana-mana kelas yang disebutkan di sini untuk menulis ke dalam fail berdasarkan kandungan fail.