Pengoperasian File I / O

Kita membutuhkan file untuk menyimpan output suatu program saat program berakhir. Dengan menggunakan file, kita dapat mengakses informasi terkait menggunakan berbagai perintah dalam berbagai bahasa.

Berikut adalah daftar beberapa operasi yang dapat dilakukan pada file -

  • Membuat file baru
  • Membuka file yang sudah ada
  • Membaca konten file
  • Mencari data pada sebuah file
  • Menulis ke dalam file baru
  • Memperbarui konten ke file yang sudah ada
  • Menghapus file
  • Menutup file

Menulis ke dalam File

Untuk menulis konten ke dalam file, pertama-tama kita harus membuka file yang diperlukan. Jika file yang ditentukan tidak ada, maka file baru akan dibuat.

Mari kita lihat cara menulis konten ke dalam file menggunakan C ++.

Contoh

#include <iostream> 
#include <fstream> 
using namespace std;  

int main () {   
   ofstream myfile; 
   myfile.open ("Tempfile.txt", ios::out); 
   myfile << "Writing Contents to file.\n"; 
   cout << "Data inserted into file"; 
   myfile.close(); 
   return 0; 
}

Note -

  • fstream adalah kelas aliran yang digunakan untuk mengontrol operasi baca / tulis file.

  • ofstream adalah kelas aliran yang digunakan untuk menulis konten ke dalam file.

Mari kita lihat bagaimana menulis konten ke dalam file menggunakan Erlang, yang merupakan bahasa pemrograman fungsional.

-module(helloworld).  
-export([start/0]).   

start() ->
   {ok, File1} = file:open("Tempfile.txt", [write]),  
   file:write(File1,"Writting contents to file"), 
   io:fwrite("Data inserted into file\n").

Note -

  • Untuk membuka file kita harus menggunakan, open(filename,mode).

  • Sintaks untuk menulis konten ke file: write(filemode,file_content).

Output - Ketika kita menjalankan kode ini "Menulis konten ke file" akan ditulis ke dalam file Tempfile.txt. Jika file memiliki konten yang sudah ada, maka file tersebut akan ditimpa.

Membaca dari File

Untuk membaca dari sebuah file, pertama-tama kita harus membuka file yang ditentukan di reading mode. Jika file tidak ada, maka metode masing-masing mengembalikan NULL.

Program berikut menunjukkan cara membaca konten file di C++ -

#include <iostream> 
#include <fstream> 
#include <string> 
using namespace std;  

int main () {
   string readfile; 
   ifstream myfile ("Tempfile.txt",ios::in); 
   
   if (myfile.is_open()) {     
      while ( getline (myfile,readfile) ) {       
         cout << readfile << '\n'; 
      } 
      myfile.close(); 
   } else  
      cout << "file doesn't exist";  
   return 0; 
}

Ini akan menghasilkan keluaran sebagai berikut -

Writing contents to file

Note- Dalam program ini, kami membuka file teks dalam mode baca menggunakan "ios :: in" dan kemudian mencetak isinya di layar. Kami telah menggunakanwhile loop untuk membaca isi file baris demi baris dengan menggunakan metode "getline".

Program berikut menunjukkan bagaimana melakukan operasi yang sama dengan menggunakan Erlang. Di sini, kami akan menggunakanread_file(filename) metode untuk membaca semua konten dari file yang ditentukan.

-module(helloworld).  
-export([start/0]).   

start() ->  
   rdfile = file:read_file("Tempfile.txt"),  
   io:fwrite("~p~n",[rdfile]).

Ini akan menghasilkan keluaran sebagai berikut -

ok, Writing contents to file

Hapus File yang Ada

Kami dapat menghapus file yang ada menggunakan operasi file. Program berikut menunjukkan bagaimana menghapus file yang sudah adausing C++ -

#include <stdio.h> 

int main () {   
   if(remove( "Tempfile.txt" ) != 0 ) 
      perror( "File doesn’t exist, can’t delete" ); 
   else 
      puts( "file deleted successfully " ); 
   return 0; 
}

Ini akan menghasilkan keluaran sebagai berikut -

file deleted successfully

Program berikut menunjukkan bagaimana Anda dapat melakukan operasi yang sama dalam Erlang. Di sini, kami akan menggunakan metode tersebutdelete(filename) untuk menghapus file yang sudah ada.

-module(helloworld).  
-export([start/0]).   

start() ->  
   file:delete("Tempfile.txt").

Output - Jika file “Tempfile.txt” ada, maka akan dihapus.

Menentukan Ukuran File

Program berikut menunjukkan bagaimana Anda dapat menentukan ukuran file menggunakan C ++. Di sini, fungsinyafseek mengatur indikator posisi yang terkait dengan aliran ke posisi baru, sedangkan ftell mengembalikan posisi saat ini di arus.

#include <stdio.h> 

int main () {  
   FILE * checkfile; 
   long size; 
   checkfile = fopen ("Tempfile.txt","rb"); 
   
   if (checkfile == NULL)  
      perror ("file can’t open"); 
   else {   
      fseek (checkfile, 0, SEEK_END);    // non-portable 
      size = ftell (checkfile); 
      fclose (checkfile); 
      printf ("Size of Tempfile.txt: %ld bytes.\n",size); 
   } 
   return 0; 
}

Output - Jika file "Tempfile.txt" ada, maka ukurannya akan ditampilkan dalam byte.

Program berikut menunjukkan bagaimana Anda dapat melakukan operasi yang sama di Erlang. Di sini, kami akan menggunakan metode tersebutfile_size(filename) untuk menentukan ukuran file.

-module(helloworld).  
-export([start/0]).   

start() ->  
   io:fwrite("~w~n",[filelib:file_size("Tempfile.txt")]).

Output- Jika file "Tempfile.txt" ada, maka ukurannya akan ditampilkan dalam byte. Jika tidak, ini akan menampilkan "0".