CodeGym /Java Blog /Acak /Java – Menulis ke File
John Squirrels
Level 41
San Francisco

Java – Menulis ke File

Dipublikasikan di grup Acak
Salah satu tugas paling umum dalam pengembangan perangkat lunak adalah kemampuan membaca dan menulis file. Di Java, menulis ke file adalah proses mudah yang dapat dilakukan menggunakan kelas dan metode bawaan. Pada artikel ini, kita akan mempelajari cara menulis ke file menggunakan Java dan mendiskusikan berbagai kelas dan metode yang terlibat. Java menyediakan kelas bawaan seperti FileWriter dan PrintWriter untuk menulis ke dalam file di Java.

Java Menulis ke File Contoh

Untuk memulainya, mari kita lihat contoh sederhana penulisan ke file di Java. Berikut ini contoh cara menulis string ke file di Java menggunakan kelas FileWriter :

kelas Penulis File

Kelas FileWriter adalah cara lain untuk menulis ke file di Java. Ini adalah kelas aliran karakter yang memungkinkan Anda menulis data karakter ke file. Berikut ini contoh yang menunjukkan cara menggunakan kelas FileWriter untuk menulis String ke file:
import java.io.FileWriter;
import java.io.IOException;


// Main method for the string to file in java starts from here,
public class WriteToFileExample {
    public static void main(String[] args) {
        // create a string to write text to file
        String data = "Hello, world!";

        try {
            // create a FileWriter object with the file name
            FileWriter writer = new FileWriter("output.txt");

            // write the string to the file
            writer.write(data);

            // close the writer
            writer.close();

            System.out.println("Successfully wrote text to file.");

        } catch (IOException e) {
            System.out.println("An error occurred.");
            e.printStackTrace();
        }
    }
}
Dalam contoh ini, pertama-tama kita membuat objek String bernama data yang berisi teks yang ingin kita tulis ke file. Kita kemudian membuat objek FileWriter dengan nama file yang ingin kita tulis, dalam hal ini bernama output.txt . Selanjutnya, kita menggunakan metode write() pada objek FileWriter untuk menulis string data ke file. Metode ini mengambil argumen String yang berisi data untuk ditulis. Terakhir, kita menutup objek FileWriter untuk melepaskan sumber daya file dan mencetak pesan sukses ke konsol jika operasi penulisan berhasil atau pesan kesalahan jika pengecualian tertangkap. Kelas FileWriter adalah cara sederhana untuk menulis data karakter ke file di Java.

Kelas FileOutputStream

Kelas FileOutputStream digunakan untuk menulis data ke file sebagai aliran byte. Berikut ini contohnya:
import java.io.FileOutputStream;
import java.io.IOException;

public class WriteToFileExample {
    public static void main(String[] args) {
        String textToWrite = "Hello World!";

        try {
            FileOutputStream stream = new FileOutputStream("output.txt");
            byte[] bytesToWrite = textToWrite.getBytes();
            stream.write(bytesToWrite);
            stream.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
Dalam contoh ini, kita membuat objek FileOutputStream bernama stream dengan nama file "output.txt" untuk menulis. Kami kemudian mengonversi string textToWrite menjadi array byte menggunakan metode getBytes() dan menulis array byte ke objek aliran menggunakan metode write() . Terakhir, kita menutup objek aliran .

Kelas BufferedWriter

Kelas BufferedWriter digunakan untuk menulis teks ke file dengan kemampuan buffering . Berikut ini contohnya:
import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;

public class WriteToFileExample {
    public static void main(String[] args) {
        String textToWrite = "Hello World!";

        try {
            BufferedWriter writer = new BufferedWriter(new FileWriter("output.txt"));
            writer.write(textToWrite);
            writer.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
Dalam contoh ini, kita membuat objek BufferedWriter bernama writer dengan objek FileWriter yang menulis ke file "output.txt". Kami kemudian menggunakan metode write() dari objek penulis untuk menulis textToWrite ke file. Terakhir, kita menutup objek penulis .

Metode WriteString()

Metode writeString () adalah metode mudah yang diperkenalkan di Java 11 untuk menulis String ke file menggunakan kelas Files . Ini memungkinkan Anda untuk menulis String ke file dalam satu baris kode. Berikut ini contohnya:
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;

public class WriteToFileExample {
    public static void main(String[] args) {
        // create a string to write to a file
        String data = "Hello, world!";

        // create a file object
        Path file = Paths.get("output.txt");

        try {
            // write the string to the file using writeString() method
            Files.writeString(file, data);

            System.out.println("Successfully wrote text to file.");

        } catch (IOException e) {
            System.out.println("An error occurred.");
            e.printStackTrace();
        }
    }
}
Dalam contoh ini, pertama-tama kita membuat objek String bernama data yang berisi teks yang ingin kita tulis ke file. Kita kemudian membuat objek Path bernama file yang mewakili file yang ingin kita tulis, dalam hal ini bernama "output.txt". Selanjutnya, kita menggunakan metode Files.writeString() untuk menulis string data ke file yang diwakili oleh objek file . Metode ini membutuhkan dua argumen: objek Path yang mewakili file yang akan ditulis, dan objek String yang berisi data yang akan ditulis. Terakhir, kami mencetak pesan sukses ke konsol jika operasi penulisan berhasil atau pesan kesalahan jika pengecualian tertangkap. Metode writeString() adalah cara mudah untuk menulis String ke file menggunakan Java 11 atau lebih baru.

Kelas Penulis Cetak

Kelas PrintWriter secara otomatis menghapus buffer keluaran setelah setiap baris ditulis, memastikan bahwa data segera ditulis ke file. Ini menjadikannya pilihan yang tepat untuk menulis data teks dalam jumlah besar ke file. Berikut ini contohnya:
import java.io.PrintWriter;
import java.io.FileWriter;
import java.io.IOException;

public class WriteToFileExample {
    public static void main(String[] args) {
        String textToWrite = "Hello World!";

        try {
            PrintWriter writer = new PrintWriter(new FileWriter("output.txt"));
            writer.println(textToWrite);
            writer.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
Dalam contoh ini, kita membuat objek PrintWriter bernama writer dengan objek FileWrite yang menulis ke file "output.txt". Kami kemudian menggunakan metode println() objek penulis untuk menulis textToWrite ke file. Terakhir, kita menutup objek penulis .

Kelas DataOutputStream

Kelas DataOutputStream digunakan untuk menulis tipe data Java primitif ke file sebagai aliran byte. Berikut ini contohnya:
import java.io.DataOutputStream;
import java.io.FileOutputStream;
import java.io.IOException;

public class WriteToFileExample {
    public static void main(String[] args) {
        String textToWrite = "Hello World!";
        int numberToWrite = 42;

        try {
            DataOutputStream stream = new DataOutputStream(new FileOutputStream("output.txt"));
            stream.writeUTF(textToWrite);
            stream.writeInt(numberToWrite);
            stream.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
Dalam contoh ini, kita membuat objek DataOutputStream bernama stream , yang menulis ke file "output.txt". Kami kemudian menggunakan metode writeUTF() dari objek aliran untuk menulis string textToWrite dan metode writeInt() untuk menulis bilangan bulat numberToWrite ke file. Terakhir, kita menutup objek aliran .

Kelas Saluran File

Kelas FileChannel menyediakan cara untuk menulis data ke file menggunakan I/O yang dipetakan memori . Berikut ini contohnya:
import java.io.File;
import java.io.IOException;
import java.io.RandomAccessFile;
import java.nio.ByteBuffer;
import java.nio.channels.FileChannel;

public class WriteToFileExample {
    public static void main(String[] args) {
        String textToWrite = "Hello World!";

        try {
            File file = new File("output.txt");
            RandomAccessFile randomAccessFile = new RandomAccessFile(file, "rw");
            FileChannel channel = randomAccessFile.getChannel();
            ByteBuffer buffer = ByteBuffer.allocate(1024);
            buffer.put(textToWrite.getBytes());
            buffer.flip();
            channel.write(buffer);
            randomAccessFile.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
Dalam contoh ini, pertama-tama kita membuat objek File bernama file dengan nama file "output.txt" sebagai parameternya. Kami kemudian membuat objek RandomAccessFile bernama randomAccessFile dengan objek file dan mode "rw" sebagai parameter. Kami kemudian membuat objek FileChannel bernama channel , yang diinisialisasi menggunakan objek randomAccessFile . Kita kemudian membuat objek ByteBuffer bernama buffer dengan kapasitas 1024 byte dan meletakkan string textToWrite sebagai parameternya. Kami kemudian membalik objek buffer untuk mempersiapkannya untuk ditulis dan menulisnya ke objek saluran menggunakan metode write() . Terakhir, kita menutup objek randomAccessFile .

Kesimpulan

Kesimpulannya, menulis ke file menggunakan Java adalah tugas umum dalam pengembangan perangkat lunak yang dapat dilakukan menggunakan beberapa kelas dan metode bawaan. Pada artikel ini, kita telah membahas beberapa contoh cara menulis ke dalam file, termasuk penggunaan kelas FileOutputStream , BufferedWriter , FileWriter , PrintWriter , DataOutputStream , dan FileChannel . Penting untuk dicatat bahwa saat menulis ke file, penanganan kesalahan yang tepat dan penutupan file setelah penulisan sangat penting untuk memastikan bahwa file disimpan dengan benar dan sumber daya dilepaskan dengan benar. Dengan contoh yang diberikan dalam artikel ini, para pemula kini dapat memiliki pemahaman dasar tentang cara menulis ke file menggunakan Java dan dapat mulai berlatih dan bereksperimen dengan berbagai kasus penggunaan.
Komentar
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION