Java'da bir Dosya soyut bir veri türüdür. İlgili bilgileri depolamak için kullanılan adlandırılmış konum, Dosya . Bir kaç tane var Dosya İşlemleri beğenmek yeni Dosya oluşturma, Dosya hakkında bilgi alma, Dosyaya yazma, Dosyadan okuma Ve Dosyayı Silmek .
Dosya işlemlerini anlamadan önce bilgi sahibi olmamız gerekmektedir. Aktarım Ve Dosya yöntemleri . Her ikisi hakkında da bilginiz varsa atlayabilirsiniz.
Aktarım
Bir dizi veriye şu ad verilir: bir akıntı . İçinde Java , Aktarım iki türe ayrılır; Bayt Akışı Ve Karakter Akışı .
Bayt Akışı
Bayt Akışı esas olarak bayt verileriyle ilgilidir. Bayt akışına sahip bir dosya işleme işlemi, bayt verileriyle bir girişin sağlandığı ve yürütüldüğü bir işlemdir.
Karakter Akışı
Karakter Akışı esas olarak karakter verileriyle ilgilidir. Karakter akışına sahip bir dosya işleme işlemi, karakter verileriyle bir girişin sağlandığı ve yürütüldüğü bir işlemdir.
Akış hakkında daha fazla bilgi edinmek için, buraya tıklayın .
Java Dosya Sınıfı Yöntemleri
Evet Hayır. | Yöntem | İade Türü | Tanım |
---|---|---|---|
1. | canRead() | Boolean | canRead() yöntemi dosyanın verilerini okuyup okuyamadığımızı kontrol etmek için kullanılır. |
2. | yeniDosya oluştur() | Boolean | yeniDosya oluştur() yöntemi yeni bir boş dosya oluşturmak için kullanılır. |
3. | yazabilir() | Boolean | yazabilir() yöntemi dosyaya veri yazıp yazamayacağımızı kontrol etmek için kullanılır. |
4. | var() | Boolean | var() Belirtilen dosyanın mevcut olup olmadığını kontrol etmek için kullanılan yöntem. |
5. | silmek() | Boolean | silmek() Bir dosyayı silmek için kullanılan yöntem. |
6. | getName() | Sicim | getName() Dosya adını bulmak için yöntem kullanılır. |
7. | getAbsolutePath() | Sicim | getAbsolutePath() yöntemi, dosyanın mutlak yol adını almak için kullanılır. |
8. | uzunluk() | Uzun | uzunluk() dosyanın boyutunu bayt cinsinden almak için kullanılan yöntem. |
9. | liste() | Sicim[] | liste() Dizinde bulunan dosyaların bir dizisini elde etmek için yöntem kullanılır. |
10. | mkdir() | Boolean | mkdir() Yeni bir dizin oluşturmak için kullanılan yöntem. |
Dosya İşlemleri
Bir dosya üzerinde aşağıdaki işlemi gerçekleştirebiliriz:
- Dosya Oluştur
- Dosya Bilgilerini Al
- Bir Dosyaya Yaz
- Bir Dosyadan Oku
- Dosya Silme
Dosya Oluştur
Dosya Oluştur Yeni bir dosya oluşturmak için işlem gerçekleştirilir. biz kullanıyoruz yeniDosya oluştur() dosya yöntemi. yeniDosya oluştur() yöntemi başarıyla yeni bir dosya oluşturduğunda true değerini döndürür ve dosya zaten mevcut olduğunda false değerini döndürür.
Nasıl kullanabileceğimizi anlamak için bir dosya oluşturma örneğini ele alalım. yeniDosya oluştur() Bu işlemi gerçekleştirmek için yöntem.
CreateFile.java
// Importing File class import java.io.File; // Importing the IOException class for handling errors import java.io.IOException; class CreateFile { public static void main(String args[]) { try { // Creating an object of a file File f0 = new File('D:FileOperationExample.txt'); if (f0.createNewFile()) { System.out.println('File ' + f0.getName() + ' is created successfully.'); } else { System.out.println('File is already exist in the directory.'); } } catch (IOException exception) { System.out.println('An unexpected error is occurred.'); exception.printStackTrace(); } } }
Çıktı:
Açıklama:
Yukarıdaki kodda sırasıyla dosya işlemini gerçekleştirmek ve hataları işlemek için File ve IOException sınıfını içe aktarıyoruz. biz yaratırız f0 File sınıfının nesnesini seçin ve dosya oluşturmak istediğimiz dizinin konumunu belirtin. Try bloğunda şunu çağırıyoruz: yeniDosya oluştur() yöntemi aracılığıyla f0 Belirtilen konumda yeni bir dosya oluşturmak için nesne. Yöntem false değerini döndürürse, else bölümüne atlayacaktır. Herhangi bir hata varsa catch bloğunda ele alınır.
Dosya Bilgilerini Al
Dosya bilgilerini almak için işlem gerçekleştirilir. Dosyanın adı, mutlak yolu, okunabilirliği, yazılabilirliği ve uzunluğu gibi bilgileri elde etmek için çeşitli yöntemler kullanırız.
Dosyanın bilgilerini almak için dosya yöntemlerinin nasıl kullanılacağını anlamak için bir örnek alalım.
DosyaBilgisi.java
// Import the File class import java.io.File; class FileInfo { public static void main(String[] args) { // Creating file object File f0 = new File('D:FileOperationExample.txt'); if (f0.exists()) { // Getting file name System.out.println('The name of the file is: ' + f0.getName()); // Getting path of the file System.out.println('The absolute path of the file is: ' + f0.getAbsolutePath()); // Checking whether the file is writable or not System.out.println('Is file writeable?: ' + f0.canWrite()); // Checking whether the file is readable or not System.out.println('Is file readable ' + f0.canRead()); // Getting the length of the file in bytes System.out.println('The size of the file in bytes is: ' + f0.length()); } else { System.out.println('The file does not exist.'); } } }
Çıktı:
matematik.random java
Tanım:
Yukarıdaki kodda içe aktarıyoruz java.io.Dosya paketleyin ve bir sınıf oluşturun Dosya Bilgileri . Ana yöntemde bir önceki örneğimizde oluşturduğumuz metin dosyasının bir nesnesini oluşturuyoruz. Koşullu bir ifade kullanarak dosyanın varlığını kontrol ederiz ve eğer mevcutsa o dosya hakkında aşağıdaki bilgileri alırız:
- Dosyanın adını kullanarak alıyoruz. getName()
- kullanarak dosyanın mutlak yolunu elde ederiz. getAbsolutePath() Dosyanın yöntemi.
- Bir dosyaya veri yazıp yazamayacağımızı kontrol ediyoruz. yazabilir()
- Dosyanın verilerini okuyup okuyamadığımızı kontrol ediyoruz. canRead()
- Kullanarak dosyanın uzunluğunu elde ederiz. uzunluk()
Dosya mevcut değilse özel bir mesaj gösteririz.
Bir Dosyaya Yaz
Bir dosya üzerinde gerçekleştirebileceğimiz bir sonraki işlem 'dosyaya yazma' . Bir dosyaya veri yazmak için şunu kullanacağız: Dosya Yazarı sınıf ve onun yazmak() birlikte yöntem. kullanarak akışı kapatmamız gerekiyor. kapalı() Tahsis edilen kaynakları alma yöntemi.
Bir dosyaya nasıl veri yazabileceğimizi anlamak için bir örnek alalım.
WriteToFile.java
// Importing the FileWriter class import java.io.FileWriter; // Importing the IOException class for handling errors import java.io.IOException; class WriteToFile { public static void main(String[] args) { try { FileWriter fwrite = new FileWriter('D:FileOperationExample.txt'); // writing the content into the FileOperationExample.txt file fwrite.write('A named location used to store related information is referred to as a File.'); // Closing the stream fwrite.close(); System.out.println('Content is successfully wrote to the file.'); } catch (IOException e) { System.out.println('Unexpected error occurred'); e.printStackTrace(); } } }
Çıktı:
Açıklama:
Yukarıdaki kodda içe aktarıyoruz java.io.FileWriter Ve java.io.IOException sınıflar. Bir WriteToFile sınıfı yaratıyoruz ve onun ana yönteminde şunu kullanıyoruz: yakalamaya çalışmak engellemek. Try kısmında FileWriter sınıfının bir örneğini oluşturuyoruz. fyaz . biz diyoruz yazmak FileWriter sınıfının yöntemini seçin ve içeriği yazmak istediğimiz fonksiyona iletin. Bundan sonra, diyoruz kapalı() Dosya akışını kapatmak için FileWriter sınıfının yöntemi. İçeriği yazıp akışı kapattıktan sonra özel bir mesaj yazdırıyoruz.
Try bölümünde herhangi bir hata alırsak catch bloğuna atlar. Catch bloğunda şu işlemleri gerçekleştiriyoruz: IO İstisnası ve özel bir mesaj yazdırın.
görev yöneticisi linux
Bir Dosyadan Oku
Bir dosya üzerinde gerçekleştirebileceğimiz bir sonraki işlem 'bir dosyadan oku' . Bir dosyaya veri yazmak için şunu kullanacağız: Tarayıcı sınıf. Burada akışı kullanarak kapatmamız gerekiyor. kapalı() yöntem. Bunun bir örneğini oluşturacağız Tarayıcı sınıfı ve şunu kullan hasNextLine() yöntem Sonraki satır() yöntem Dosyadan veri almak için.
Bir dosyadan veriyi nasıl okuyabileceğimizi anlamak için bir örnek alalım.
ReadFromFile.java
// Importing the File class import java.io.File; // Importing FileNotFoundException class for handling errors import java.io.FileNotFoundException; // Importing the Scanner class for reading text files import java.util.Scanner; class ReadFromFile { public static void main(String[] args) { try { // Create f1 object of the file to read data File f1 = new File('D:FileOperationExample.txt'); Scanner dataReader = new Scanner(f1); while (dataReader.hasNextLine()) { String fileData = dataReader.nextLine(); System.out.println(fileData); } dataReader.close(); } catch (FileNotFoundException exception) { System.out.println('Unexcpected error occurred!'); exception.printStackTrace(); } } }
Çıktı:
Açıklama:
Yukarıdaki kodda içe aktarıyoruz 'java.util.Scannner', 'java.io.File' Ve 'Java.io.IOİstisna' sınıflar. Bir sınıf oluşturuyoruz Dosyadan Oku ve ana yönteminde şunu kullanırız: try-catch bloğu . Try bölümünde her ikisinin de bir örneğini oluşturuyoruz. Tarayıcı ve Dosya sınıflar. biz geçiyoruz Dosya sınıf nesnesine Tarayıcı sınıf nesnesini kullanın ve ardından tarayıcı sınıfı nesnesini kullanarak yineleyin. 'Sırasında' döngü yapın ve dosyanın her satırını yazdırın. Ayrıca tarayıcı sınıfı nesnesini de kapatmamız gerekiyor, bu yüzden close() fonksiyonunu kullanıyoruz. Try bölümünde herhangi bir hata alırsak catch bloğuna atlar. Catch bloğunda IOException'ı işliyoruz ve özel bir mesaj yazdırıyoruz.
Dosya Silme
Bir dosya üzerinde gerçekleştirebileceğimiz bir sonraki işlem 'dosya silme' . Bir dosyayı silmek için şunu kullanacağız: silmek() Dosyanın yöntemi. kullanarak akışı kapatmamıza gerek yok. kapalı() yöntemi çünkü bir dosyayı silmek için ne FileWriter sınıfını ne de Scanner sınıfını kullanmıyoruz.
Bir dosyaya nasıl veri yazabileceğimizi anlamak için bir örnek alalım.
Dosya Sil.java
// Importing the File class import java.io.File; class DeleteFile { public static void main(String[] args) { File f0 = new File('D:FileOperationExample.txt'); if (f0.delete()) { System.out.println(f0.getName()+ ' file is deleted successfully.'); } else { System.out.println('Unexpected error found in deletion of the file.'); } } }
Çıktı:
Açıklama:
Yukarıdaki kodda içe aktarıyoruz Dosya sınıf ve bir sınıf oluşturun Dosyayı sil . Sınıfın main() yönteminde şunu yaratırız: f0 Silmek istediğimiz dosyanın nesnesi. İçinde eğer ifadesine diyoruz silmek() f0 nesnesini kullanan dosyanın yöntemi. Eğer delete() yöntemi true değerini döndürürse, başarı özel mesajını yazdırırız. Aksi takdirde başarısız olan özel mesajı yazdıracağımız else bölümüne atlar.
Yukarıda belirtilen tüm işlemler, programlı olarak dosyayı okumak, yazmak, silmek ve oluşturmak için kullanılır.