Java Dosyanın İçeriğinin Bir Kısmını Silme
Aşağıdaki Java kodu, dosyanın içeriğinin bir kısmının nasıl sileneceğini gösterir.
import java.io.RandomAccessFile;
public class Demo
{
public static void main(String[] args)
{
try
{
String dosyaYolu = "dosya.txt";
int baslangicPozisyonu = 10;
int silinecekUzunluk = 20;
RandomAccessFile dosya = new RandomAccessFile(dosyaYolu, "rw");
long dosyaUzunlugu = dosya.length();
dosya.seek(baslangicPozisyonu + silinecekUzunluk);
byte[] b = new byte[(int)(dosyaUzunlugu - baslangicPozisyonu - silinecekUzunluk)];
dosya.read(b);
dosya.seek(baslangicPozisyonu);
dosya.write(b);
dosya.setLength(dosyaUzunlugu - silinecekUzunluk);
dosya.close();
System.out.println("Dosya içeriğinden belirli bir bölüm başarıyla silindi.");
}
catch (Exception hata)
{
System.out.println("Hata oluştu: " + hata.getMessage());
}
}
}
Bu kod, belirli bir dosya yolunu (dosyaYolu), silmek istediğiniz bölümün başlangıç pozisyonunu (baslangicPozisyonu) ve silinecek uzunluğu (silinecekUzunluk) tanımlar. Dosya içeriğinden belirli bir bölümü silmek için, dosya nesnesi oluşturulur ve dosya uzunluğu hesaplanır. Sonra, silinecek bölümden sonraki veriler okunur ve silinecek bölümün başlangıç pozisyonuna yazılır. Dosya uzunluğu da belirli bir bölümün silinmesi ile birlikte güncellenir ve dosya kapatılır.