Java dosyaya yazma

Java Write File



Programlama amacıyla verileri geçici veya kalıcı olarak depolamak için bir dosyaya veri yazmamız gerekir. Java'da bir dosyaya veri yazmak için birçok sınıf ve yöntem vardır. Java'da bir dosyaya veri yazmak için nasıl farklı sınıflar ve yöntemler kullanılabileceği bu öğreticide gösterilmektedir.

Dosya yazmak için bazı gerekli sınıflar ve yöntemler:

writeString() yöntemi:

Bu yöntem Java sürüm 11 tarafından desteklenmektedir. Dört parametre alabilir. Bunlar dosya yolu, karakter dizisi, karakter seti ve seçeneklerdir. Bu yöntemin bir dosyaya yazabilmesi için ilk iki parametre zorunludur. Karakterleri dosyanın içeriği olarak yazar. Dosya yolunu döndürür ve dört tür istisna atabilir. Dosyanın içeriği kısa olduğunda kullanmak daha iyidir.







Dosya Yazarı Sınıfı:

Dosyanın içeriği kısaysa, o zaman Dosya Yazarı Dosyaya yazılacak sınıf başka bir daha iyi seçenektir. Ayrıca dosyanın içeriği gibi karakter akışını da yazar. yazmaDizesi() yöntem. Bu sınıfın yapıcısı, varsayılan karakter kodlamasını ve varsayılan arabellek boyutunu bayt cinsinden tanımlar.



BufferedWriter Sınıfı:

Karakter çıkış akışına metin yazmak için kullanılır. Varsayılan bir arabellek boyutuna sahiptir, ancak büyük arabellek boyutu atanabilir. Karakter, dize ve dizi yazmak için kullanışlıdır. İstem çıktısı gerekmiyorsa, bir dosyaya veri yazmak için bu sınıfı herhangi bir yazar sınıfıyla sarmak daha iyidir.



FileOutputStream Sınıfı:

Bir dosyaya ham akış verilerini yazmak için kullanılır. FileWriter ve BufferedWriter sınıfları bir dosyaya yalnızca metin yazmak için kullanılır, ancak ikili veriler FileOutputStream sınıfı kullanılarak yazılabilir.





Aşağıdaki örnekler, bahsedilen yöntem ve sınıfların kullanımlarını göstermektedir.

Örnek-1: writeString() yöntemini kullanarak bir dosyaya yazın

Aşağıdaki örnek, yazmaDizesi() altında olan yöntem Dosyalar Bir dosyaya veri yazmak için sınıf. Başka bir sınıf, Yol, dosya adını içeriğin yazılacağı bir yol ile atamak için kullanılır. Dosyalar sınıfın adında başka bir yöntem var okumaDizesi () mevcut herhangi bir dosyanın içeriğini okumak için kodda kullanılan içeriğin dosyaya düzgün bir şekilde yazıldığını kontrol etmek.



içe aktarmak java.nio.file.Files;
içe aktarmak java.nio.file.Path;
içe aktarmak java.io.IOException;

halka açık sınıffwrite1{

halka açık statik geçersizana( Sicim []argümanlar) atar IOException
{
//Dosyanın içeriğini ata
Sicim Metin= 'Linuxhint'e hoş geldiniz Java'yı temelden öğrenin';

//Dosyanın dosya adını tanımlayın
Yol dosyasıAdı=Yol.ile ilgili('dosya1.txt');

//Dosyaya yaz
Dosyalar.writeString(dosyaAdı, metin);

//Dosyanın içeriğini oku
Sicim file_content=Dosyalar.okuma dizesi(dosya adı);

//Dosya içeriğini yazdır
sistem .dışarı.println(file_content);
}
}

Çıktı:

Kodu çalıştırdıktan sonra aşağıdaki çıktı görünecektir. Burada çıktıda gösterilen dosyaya iki satır yazılır.

Örnek-2: FileWriter sınıfını kullanarak bir dosyaya yazın

Aşağıdaki örnek, bir dosyaya içerik yazmak için FileWriter sınıfının kullanımını gösterir. Bir dosyaya yazmak için FileWriter sınıfının nesnesini dosya adıyla oluşturmayı gerektirir. Sonraki, yazı() değerini yazmak için kullanılır. Metin dosyadaki değişken. Dosya yazılırken herhangi bir hata oluşursa, bir IOexception atılır ve hata mesajı catch bloğundan yazdırılır.

//Gerekli paketleri içe aktar
içe aktarmak java.io.FileWriter;
içe aktarmak java.io.IOException;

halka açık sınıffwrite2{

halka açık statik geçersizana( Sicim []argümanlar) {

//Dosya içeriğini ata
Sicim Metin= 'En son Java sürümü önemli geliştirmeler içeriyor
performansı artırmak için, '
+ Java'nın istikrarı ve güvenliği
makinenizde çalışan uygulamalar. '
;
denemek
{
//Dosyaya yazmak için bir FileWriter nesnesi oluşturun
dosya yazarı fYazar= yeni dosya yazarı ('dosya2.txt');

//Dosyaya yaz
fYazar.yazı yazmak(Metin);

//Başarı mesajını yazdır
sistem .dışarı.Yazdır('Dosya içerikle başarıyla oluşturuldu.');

//Dosya yazar nesnesini kapat
fYazar.kapat();
}
tutmak ( IOException Ve)
{
//Hata mesajını yazdır
sistem .dışarı.Yazdır(Ve.getMessage());
}
}
}

Çıktı:

Dosya içeriği dosyaya başarılı bir şekilde yazılırsa, aşağıdaki çıktı görünecektir. Dosyanın doğru şekilde oluşturulup oluşturulmadığını doğrulamak için proje klasörünü kontrol edebilirsiniz.

Örnek-3: BufferedWriter sınıfını kullanarak bir dosyaya yazın

Aşağıdaki örnek, bir dosyaya yazmak için BufferedWriter sınıfının kullanımını gösterir. Ayrıca, dosyaya içerik yazmak için FileWriter gibi BufferedWriter sınıfının nesnesini oluşturmayı gerektirir. Ancak bu sınıf, büyük bir arabellek boyutu kullanarak dosyaya yazmak için büyük içeriği destekler.

içe aktarmak java.io.BufferedYazar;
içe aktarmak java.io.FileWriter;
içe aktarmak java.io.IOException;
halka açık sınıffwrite3{

halka açık statik geçersizana( Sicim []argümanlar) {

//Dosya içeriğini ata
Sicim Metin= 'LinuxHint'ten Java'yı kolayca öğrenin';

denemek {

//BufferedWriter nesnesi oluştur
Arabelleğe Alınmış Yazar f_yazar= yeni Arabelleğe Alınmış Yazar (yeni dosya yazarı ('dosya3.txt'));
f_yazar.yazı yazmak(Metin);

//Başarı mesajını yazdır
sistem .dışarı.Yazdır('Dosya içerikle başarıyla oluşturuldu.');

//BufferedWriter nesnesini kapat
f_yazar.kapat();
}
tutmak ( IOException Ve)
{
//Hata mesajını yazdır
sistem .dışarı.Yazdır(Ve.getMessage());
}
}
}

Çıktı:

Dosya içeriği dosyaya başarılı bir şekilde yazılırsa, aşağıdaki çıktı görünecektir. Dosyanın doğru şekilde oluşturulup oluşturulmadığını doğrulamak için proje klasörünü kontrol edebilirsiniz.

Örnek-4: FileOutputStream sınıfını kullanarak bir dosyaya yazın

Aşağıdaki örnekte FileOutputStream sınıfı kullanılarak bir dosyaya veri yazmak için gösterilmiştir. Ayrıca bir dosyaya veri yazmak için sınıfın nesnesini dosya adıyla oluşturmayı gerektirir. Burada, dize içeriği, dosyaya yazılan bayt dizisine dönüştürülür. yazı yazmak() yöntem.

içe aktarmak java.io.FileOutputStream;
içe aktarmak java.io.IOException;

halka açık sınıffwrite4{

halka açık statik geçersizana( Sicim []argümanlar) {

//Dosya içeriğini ata
Sicim dosya İçeriği= 'LinuxHint'e Hoş Geldiniz';

denemek {
//FileOutputStream'in bir nesnesini oluşturun
DosyaÇıktıAkış çıktıAkış= yeni DosyaÇıktıAkış ('dosya4.txt');

// dizeden bayt içeriğini depola
bayt[]strToByte=dosya İçeriği.getBytes();

//Dosyaya yaz
çıktıAkımı.yazı yazmak(strToByte);

//Başarı mesajını yazdır
sistem .dışarı.Yazdır('Dosya içerikle başarıyla oluşturuldu.');

//nesneyi kapat
çıktıAkımı.kapat();
}
tutmak ( IOException Ve)
{
//Hata mesajını yazdır
sistem .dışarı.Yazdır(Ve.getMessage());
}
}
}

Çıktı:

Dosya içeriği dosyaya başarılı bir şekilde yazılırsa, aşağıdaki çıktı görünecektir. Dosyanın doğru şekilde oluşturulup oluşturulmadığını doğrulamak için proje klasörünü kontrol edebilirsiniz.

Çözüm:

Bu öğreticide, farklı Java sınıfları kullanılarak bir dosyaya yazmanın birden çok yolu gösterilmektedir. Kullanıcı, dosyanın içeriğine göre bir dosyaya yazmak için burada bahsedilen sınıflardan herhangi birini seçebilir.