Rumah >Java >javaTutorial >Bagaimana untuk Menambah Data pada Fail Menggunakan FileOutputStream Tanpa Mengganti Kandungan Sedia Ada?

Bagaimana untuk Menambah Data pada Fail Menggunakan FileOutputStream Tanpa Mengganti Kandungan Sedia Ada?

DDD
DDDasal
2024-11-01 17:47:30965semak imbas

How to Append Data to a File Using FileOutputStream Without Overwriting Existing Content?

Cara Menulis Data Menggunakan FileOutputStream Tanpa Mengganti Kandungan Sedia Ada

Memelihara data sedia ada semasa menulis ke fail menggunakan FileOutputStream adalah kebimbangan biasa. Secara lalai, FileOutputStream menimpa fail jika ia sudah wujud. Nasib baik, terdapat cara untuk mengelakkan perkara ini dan sebaliknya menambah data baharu.

Penyelesaian:

Kuncinya ialah menggunakan pembina FileOutputStream yang mengambil dua hujah:

<code class="java">FileOutputStream(File file, boolean append)</code>

Di sini, parameter boolean menentukan sama ada untuk menambah (benar) atau menulis ganti (salah). Dengan menetapkan tambah kepada benar, data yang anda tulis akan ditambahkan pada penghujung fail, tanpa memadamkan kandungan sedia ada.

Contoh:

<code class="java">File file = new File("my_file.txt");

FileOutputStream fos = new FileOutputStream(file, true);
fos.write("Hello world!".getBytes());</code>

Dalam contoh ini, data "Hello dunia!" akan dilampirkan pada fail bernama "my_file.txt". Jika fail sudah wujud, kandungan sedia ada tidak akan hilang.

Nota Tambahan:

  • Apabila menggunakan mod tambah, adalah penting untuk memastikan bahawa fail sudah wujud sebelum menulis kepadanya. Jika anda cuba menambah pada fail yang tidak wujud, FileOutputStream akan mencipta fail baharu sebaliknya.
  • Mod tambahan juga tersedia untuk subkelas OutputStream yang lain, seperti PrintStream.

Atas ialah kandungan terperinci Bagaimana untuk Menambah Data pada Fail Menggunakan FileOutputStream Tanpa Mengganti Kandungan Sedia Ada?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn