OPERASI FILE

Ada kalanya seorang programmer harus berhubungan dengan file. Sebagai contoh
pada saat pembuatan program database, seorang programmer menyimpan data
pada sebuah file dan pada kemudian waktu data tersebut dikeluarkan untuk diolah.
Pada prinsipnya operasi yang dilakukan pada file terdiri dari tiga tahap, yaitu :
1. Membuka file
2. Melakukan pemrosesan pada file
3. Menutup file
Dalam melakukan operasi file, programmer membutuhkan fungsi – fungsi yang
berhubungan dengan operasi file yang terdapat pada file fstream.h. Oleh sebab
itu, untuk dapat melakukan operasi file, maka prepocessor directive berikut
ditambahkan.
#include <fstream.h>
MEMBUKA FILE
Pembukaan dari suatu file mempunyai dua tujuan, yaitu membaca isi file atau untuk menulis ke dalam
file tersebut. Dalam C++ penanganan pembukaan file untuk membaca atau menulis ke dalam file
berbeda.
1. Membuka file untuk dibaca
ifstream file_objek;
Setelah objek_input diciptakan, maka file dibuka dengan cara
file_objek.open(“nama_file”);
Adapun dua pernyataan diatas dapat disederhanakan sebagai berikut:
ifstream file_objek(“nama_file”);
2. Membuka file untuk ditulisi
ofstream file_objek;
Setelah objek_output diciptakan, maka file dibuka dengan cara
file_objek.open(“nama_file”);
Adapun dua pernyataan diatas dapat disederhanakan sebagai berikut:
ofstream file_objek(“nama_file”);
3. Membuka File dengan Modus Tertentu
Pada point 1 dan 2 pembukaan file hanya bias dilakukan untuk keperluan membaca
atau menulis saja, bukan untuk kedua-duanya, dan pada 7.1.2 jika isi dari nama_file
sudah ada, maka isi yang lama akan dihapus dan digantikan dengan isi yang baru. Pada
suatu waktu mungkin anda memerlukan cara supaya file yang anda buka dapat
dipergunakan untuk membaca dan menulis sekaligus, atau isi file yang sudah ada tidak
dihapus jika anda ingin menambah isi file yang baru. Untuk keperluan itu, anda harus
memformat modus pembukaan file. Adapun modus pembukaan file yang disediakan
oleh C++ .
Adapun contoh penggunaan dari modus – modus pembukaan file adalah
sebagai berikut :
fstream file_objek (“nama_file”,ios::in | ios::out);
Pernyataan diatas adalah dekalarasi file nama_file dengan sehinggan nama_file
dapat dibaca dan ditulisi.
PEMROSESAN FILE
Setelah file dibuka, maka dilakukan pemrosesan pada file yang telah dibuka tersebut,
antara lain :
1. Menulis ke File
Contoh :
#include<iostream.h>
#include<fstream.h>
void main()
{
ofstream file_objek;
file_objek.open("latihan.txt");
cout<<"Latihan menulis ke dalam sebuah file\n";
for(int i=1;i<11;i++)
file_objek<<"Ini adalah baris ke "<<i<<endl;
file_objek.close();
}
Pada direktori dimana anda men-save file tersebut akan terdapat sebuah
file bernama latihan.txt
2. Membaca Isi File
Contoh :
#include<iostream.h>
#include<fstream.h>
void main()
{
const int MAX = 80;
char buffer[MAX+1];
ifstream file_objek;
file_objek.open("latihan.txt");
cout<<"Membaca isi file latihan.txt\n";
while(file_objek)
{
file_objek.getline(buffer,MAX);
AP- Algoritma – TEAM Algoritma Halaman: 57
cout<<buffer<<endl;
}
}
Program ini membaca isi file latihan.txt dan menampilkannya ke layar.
File_objek.getline(buffer,MAX) digunakan untuk membaca teks dari file.
Memeriksa Operasi File
C++ menyediakan sejumlah fungsi yang berguna untuk memeriksa kondisi-kondisi
pada operasi file, sehingga kejadian kesalahan pada saat eksekusi dapat
dikendalikan.
Contoh :
/* Program ini menghasilkan output yang sama dengan program
pada contoh 2 */
#include<iostream.h>
#include<fstream.h>
void main()
{
const int MAX = 80;
char buffer[MAX+1];
ifstream file_objek;
file_objek.open("latihan.txt");
cout<<"Membaca isi file latihan.txt\n";
while(!file_objek.eof())
{
file_objek.getline(buffer,MAX);
cout<<buffer<<endl;
}
}
AP- Algoritma – TEAM Algoritma Halaman: 58
Program pada contoh diatas sama saja dengan contoh program pada point 2
Perbedaannya hanya pada
while(file_objek) dan
while(!file_objek.eof())
while(file_objek) jika diartikan dalam bahasa sehari – hari adalah jika isi dari file_objek
(dalam hal ini, latihan.txt) masih ada, maka baca satu baris pada file latihan.txt lalu
pindahkan pointer satu baris ke bawah. Jika isi pada baris tersebut tidak ada, maka
hentikan loop. Sedangkan pada while(!file_objek.eof()) dapat diartikan, jika pointer
tidak terdapat di baris paling akhir dari file_objek, maka lanjutkan loop. Jika tidak,
maka hentikan loop.
MENUTUP FILE
Setelah pemrosesan file berakhir, maka file perlu ditutup. Langkah ini dilakukan dengan
cara
file_objek.close();
Pemakaian fungsi close() sifatnya optional. Bila anda tidak mempergunakannya,
compiler tidak akan mengeluarkan pesan error.
Dibawah ini diberikan contoh – contoh penggunaan operasi file pada suatu system
operasi.
Contoh :
1. Program menyalin suatu file
// Simpan dengan nama cp.cpp
#include <iostream.h>
#include <conio.h>
#include <stdlib.h>
#include <fstream.h>
#include <string.h>
#define max 80
void main(int argc,char *argv[])
{
char buffer[max+1];
if (argc!=3)
{
cerr<<"Pemakaian : cp file_yang_akan_dikopi file_baru\n";
exit(1);
}
AP- Algoritma – TEAM Algoritma Halaman: 59
strupr(argv[1]);
ifstream input(argv[1], ios::binary);
ofstream output(argv[2], ios::binary);
if (!input)
{
cerr<<"File yang akan dikopi tidak ada, periksa kembali !!!\n";
exit(1);
}
for(;;)
{
input.read(buffer,max);
output.write(buffer,max);
if(input.eof())break;
}
input.close();
output.close();
}
2. Program Membaca Isi Suatu File
// Simpan dengan nama baca.cpp
#include <iostream.h>
#include <conio.h>
#include <fstream.h>
#include <stdlib.h>
#include <string.h>
void main(int argc,char *argv[])
{
clrscr();
const int max=84;
char buffer[max+1];
char namafile[64];
if(argc!=2)
{
cerr<<"Penggunaan : Baca nama_file\n";
exit(1);
}
strcpy(namafile,argv[1]);
strupr(namafile);
ifstream input;
input.open(namafile);
while(!input)
{
cerr<<"File Not Found !!!\n";
exit(1);
}
while (!input.eof())
{
input.getline(buffer,max);
cout<<buffer<<endl;
}
input.close();
getch();
}


Tampilan







Pembuat Blog


Nama : Widiyanto
Alamat : Jl. BBK Tarogong No. 399/196B Bandung
TTL : 02 - 02 - 1991
KElas : 1 TI - 8
NRP : 6309111



Data Kampus


PKN LPKIA
Jl. Soekarno Hatta No. 456
Bandung 40266

Tugas Kuliah

Matakuliah : Teori Struktur Data
Dosen : Dadan Nurdin Bagenda, ST.


0 komentar to "OPERASI FILE"

Posting Komentar

Blog Archive

Kotak saran

Web hosting for webmasters