Upload presentasi
Presentasi sedang didownload. Silahkan tunggu
Diterbitkan olehJimmy Prayogi Telah diubah "9 tahun yang lalu
1
OPERASI FILE Bag.2 Pertemuan 27 Dasar Pemrograman
Renni Angreni, S.Kom.
2
Operasi Berbasis Karakter
Operasi pada file tidak harus dalam bentuk string, seperti sejumlah contoh program yang telah diberikan. Kita dapat melakukan operasi pada file berbasis karakter. Perekaman ke file dilakukan karakter demi karakter dan begitu pula proses pembacaannya. Untuk melakukan ini, kita gunakan fungsi anggota put() dan get() pada kelas ofstream dan ifstream. put() untuk menuliskan sebuah karakter ke file. get() untuk mengambil sebuah karakter dari file.
3
Contoh #include <iostream> #include <conio.h>
#include <string> #include <fstream> using namespace std; void main() { ofstream fileKeluar("karakter.txt"); fileKeluar.put('A'); fileKeluar.put('B'); fileKeluar.put('C'); fileKeluar.put('\n'); fileKeluar.put('N'); fileKeluar.close(); _getch(); }
4
Contoh #include <iostream> #include <conio.h>
#include <string> #include <fstream> using namespace std; void main() { char karakter; ifstream fileMasuk("karakter.txt"); while (!fileMasuk.eof()) { fileMasuk>>karakter; if (fileMasuk.fail()) break; cout<<"Karakter yang dibaca : “; cout<<karakter<<endl; } fileMasuk.close(); _getch();
5
Contoh #include <iostream> #include <conio.h>
#include <fstream> using namespace std; void main() { char karakter; ifstream fileMasuk("karakter.txt"); while (!fileMasuk.eof()) { fileMasuk.get(karakter); if (fileMasuk.fail()) break; cout<<karakter; } fileMasuk.close(); _getch();
6
Operasi Penunjuk File Setiap objek file memiliki penunjuk file tersendiri. Penunjuk file bertindak sebagai penunjuk posisi di dalam file terhadap perekaman ataupun pembacaan. Dalam hal ini setiap objek file memiliki dua buah penunjuk file, yaitu penunjuk file untuk keperluan pembacaan data dan penunjuk file untuk keperluan perekaman data. Penunjuk file baik untuk keperluan pembacaan maupun perekaman dapat dipindahkan dengan menggunakan fungsi anggota seekg() dan seekp().
7
seekg() berguna untuk memindahkan penunjuk file yang digunakan sebagai penunjuk operasi pembacaan.
seekp() berguna untuk memindahkan penunjuk file yang digunakan sebagai penunjuk operasi perekaman. Sintaxnya : seekp(int posisi); atau seekp(offset, acuan); seekg(int posisi); atau seekg(offset, acuan); Dengan posisi acuan yang dapat kita gunakan antara lain : ios::beg posisi awal file ios::cur posisi pointer saat ini ios::end posisi akhir file
8
Contoh #include <iostream> #include <conio.h>
#include <fstream> using namespace std; void main() { char karakter; fstream fHuruf("huruf.txt", ios::out); fHuruf.close(); fHuruf.open("huruf.txt", ios::in|ios::out); for (char huruf = 'A'; huruf<='Z'; huruf++) fHuruf.put(huruf); cout<<"Membaca dari awal hingga akhir"<<endl; for (char huruf='A'; huruf<='Z'; huruf++) { fHuruf.seekg(huruf-'A', ios::beg); fHuruf.get(karakter); cout<<karakter; } cout<<endl; _getch();
9
Contoh #include <iostream> #include <conio.h>
#include <fstream> using namespace std; void main() { char karakter; fstream fHuruf("huruf.txt", ios::out); fHuruf.close(); fHuruf.open("huruf.txt", ios::in|ios::out); for (char huruf = 'A'; huruf<='Z'; huruf++) fHuruf.put(huruf); cout<<"Membaca karakter pertama dan terakhir"<<endl; fHuruf.seekg(0, ios::beg); fHuruf.get(karakter); cout<<"Karakter Pertama : "<<karakter<<endl; fHuruf.seekg(-1, ios::end); cout<<"Karakter terakhir : "<<karakter<<endl; _getch(); }
10
Informasi mengenai posisi penunjuk file untuk operasi masukan ataupun keluaran dapat diperoleh dengan menggunakan fungsi anggota tellp() dan tellg(). tellp() menunjukkan posisi penunjuk file perekaman. tellg() menunjukkan posisi penunjuk file pembacaan. Fungsi tellp() dan tellg() mengembalikan nilai integer yang menyatakan posisi pointer perekaman dan pembacaan. Fungsi ini dapat digunakan dengan langsung menugaskan fungsi ini ke dalam suatu variabel integer.
11
Contoh #include <iostream> #include <conio.h>
#include <fstream> using namespace std; void main() { char karakter; fstream fHuruf("huruf2.txt", ios::out); fHuruf.close(); fHuruf.open("huruf2.txt", ios::out|ios::in); cout<<"posisi penunjuk file setelah file dibuka"<<endl; cout<<"Masukan : "<<fHuruf.tellg()<<endl; cout<<"Keluaran : "<<fHuruf.tellp()<<endl; for(char huruf='A'; huruf<='Z'; huruf++) fHuruf<<huruf; cout<<"Posisi penunjuk file setelah perekaman"<<endl; _getch(); }
12
Contoh #include <iostream> #include <conio.h>
#include <fstream> using namespace std; void main() { char karakter; fstream fHuruf("huruf2.txt", ios::out); fHuruf.close(); fHuruf.open("huruf2.txt", ios::out|ios::in); for(char huruf='A'; huruf<='Z'; huruf++) fHuruf<<huruf; fHuruf.seekp(5); fHuruf.put('!'); cout<<"Posisi setelah proses : "<<endl; cout<<"Masukan : "<<fHuruf.tellg()<<endl; cout<<"Keluaran : "<<fHuruf.tellp()<<endl; fHuruf.seekg(5); cout<<"Posisi setelah seekg(5) : "<<endl; fHuruf.seekg(0); for(char huruf='A'; huruf<='Z'; huruf++) { fHuruf>>karakter; cout<<karakter; } _getch();
13
-- Sekian -- Dasar Pemrograman Renni Angreni, S.Kom.
Presentasi serupa
© 2024 SlidePlayer.info Inc.
All rights reserved.