z Programming
• Baca Tulis File
• Buka file
• Simpan File
• Tambah Data File
z Exercises:
• Develop program codes
Untuk dapat membaca atau menulis data dari/ke sebuah file maka
langkah yang perlu dilakukan adalah:
1. membuka file
- mendefinisikan
d fi i ik variabel
i b l stream
t
- melakukan perintah open()
3. Menutup file
- menggunakan perintah close()
1
Cont’d
1. membuka file
- mendefinisikan variabel stream
contoh:
ifstream input; // variabel stream untuk input
p ; // variabel stream untuk output
ofstream output; p
fstream InpOut; // variabel stream utk input/output
Contoh
#include <iostream>
#include <fstream>
using namespace std;
int main() {
// membuka file
VarBaca.open(“F:/KU-1072/COBA.TXT");
// Menutup file
VarBaca.close();
2
Tulis Data ke dalam File
Contoh pprogram
g menulis
data ke file:
Data file yang bernama #include <iostream>
“COBA.TXT” akan disimpan pada #include <fstream>
folder di mana folder tempat using namespace std;
program file berada. Atau informasi int main() {
drive dan folder harus diinputkan,
contoh: // Mendeklarasikan stream untuk proses output
“C://DATA//COBA.TXT” ofstream VarTulis;
// Menutup file
VarTulis.close();
}
5
Contoh pprogram
g membaca #include <iostream>
#include <fstream>
data dari file: using namespace std;
Data file yang bernama
int main() {
“COBA.TXT” harus sudah
ada di folder tempat program file
// Mendeklarasikan stream untuk proses output
berada. Jika tidak maka informasi
ifstream VarBaca;
drive dan folder harus diinputkan,
char Teks[80];
contoh:
“C://DATA//COBA.TXT”
// membuka file
VarBaca >> Teks; menghasilkan p (
VarBaca.open(“F:/KU-1072/COBA.TXT"); );
satu string/kata dibaca dari file. VarBaca >> Teks; // proses membaca data dr file (1 string/kata)
Jika coba.txt hasil dari program slide cout << Teks << “ “; // “ “ -> memisahkan dg teks berikutnya
sebelumnya adalah sebagai input VarBaca >> Teks; // proses baca data dr file (1 string/kata)
file maka hasil di layar adalah: cout << Teks;
// Menutup file
VarBaca.close();
}
6
3
Baca Data dengan operator >>
4
Baca Tulis File
Melakukan pembacaan data dari file
- menggunakan operand read()
#include <iostream>
#include <fstream>
fstream
using namespace std;
Contoh program membaca
data ke file: int main() {
Jika coba.txt hasil dari program slide // Mendeklarasikan stream untuk proses output
sebelumnya adalah sebagai input file ifstream VarBaca;
maka hasil di layar adalah: char Teks[80];
// membuka file
VarBaca.open(“F:/KU-1072/COBA.TXT");
strcpy(Teks "
strcpy(Teks, ");
); // mengosongkan variabel Teks
VarBaca.read(Teks, 15
15); // proses membaca data dr file
cout << Teks << endl;
Silahkan dicoba jika angka 15 strcpy(Teks, " "); // mengosongkan variabel Teks
atau 13 diganti dengan angka VarBaca.read(Teks, 13
13); // proses baca data dr file
yang berbeda! cout << Teks;
// Menutup file
VarBaca.close();
9
}
Operand write()
// membuka file
p ( )
VarTulis.open(“F:/KU-1072/COBA.dat");
10
5
Operand read()
// membuka file
p ( )
VarBaca.open(“F:/KU1072/COBA.dat");
Silahkan dicoba menyimpan
data berupa angka/numerik VarBaca.read((char *) &angka, sizeof(float));
lebih dari satu dengan jenis cout << angka << endl;
tipe data yang berbeda (mis. // Menutup file
int, long int, double) ! VarBaca.close();
Coba anda pikirkan
bagaimana cara membaca }
data yang telah tersimpan 11
tersebut. !!
#include <iostream>
#include <fstream>
using namespace std;
int main(void) {
Hasil penyimpan di file:
// Mendeklarasikan stream untuk proses input
ifstream VarBaca;
// Mendeklarasikan stream untuk proses output
ofstream VarTulis;
char Teks[80];
// membuka file
VarTulis.open(“F:/KU-1072/COBI.TXT");
VarTulis << " C++ mudah Sekali " << endl; //menulis data ke file
VarTulis << " Pemrograman Mudah " << endl; //menulis data ke file
// Menutup file
12
VarTulis.close();
6
Lanjutan …
open eof
Hasil pembacaan dari file:
// membuka file
VarBaca.open(“F:/KU-1072/COBI.TXT");
Coba tanda delimiter ‘\n’ anda ganti dengan tanda delimiter spacebar ‘ ‘. Perhatikan hasil
13
pada layar.
#include <iostream>
#include <fstream>
using namespace std;
int main(void) {
// membuka file
VarTulis open(“F:/KU-1072/COBE
VarTulis.open( F:/KU-1072/COBE.TXT
TXT");
);
VarTulis << "C++ sangat Sekali" << endl; //menulis data ke file
VarTulis << "Pemrograman Mudah" << endl; //menulis data ke file
// Menutup file
VarTulis.close();
14
7
Lanjutan … Baca Tulis File
// membuka file
VarBaca.open(“F:/KU-1072/COBI.TXT");
g( , ios::beg);
VarBaca.seekg(17, g); // set file p
pointer ke p
posisi
// 17byte dr awal file
strcpy(Teks, “ “);
VarBaca.read(Teks, 12); // proses baca data dari file
cout << Teks << “ “;
strcpy(Teks, “ “);
VarBaca.read(Teks, 5); // proses baca data dari file
cout << Teks << “ “;
15
Lanjutan …
Baca Tulis File
strcpy(Teks, “ “);
VarBaca.read(Teks, 6); // proses baca data dari file Hasil:
cout << Teks << “ “;
// Menutup file
VarBaca.close();
16
8
fopen
Membaca atau menulis data dari/ke sebuah file dapat dilakukan juga
dengan perintah fopen()
Untuk
U t kd
dapatt membaca
b atau
t menulis
li data
d t dari/ke
d i/k sebuah
b h file
fil maka
k
langkah yang perlu dilakukan adalah:
1. membuka file
- mendefinisikan variabel stream
- melakukan perintah fopen()
3. Menutup file
- menggunakan perintah fclose() atau _fcloseall()
_fcloseall();
17
void main() {
// membuka file
VarBaca = fopen("COBA.TXT", "r");
if(VarBaca==NULL){
cout << " Error buka file : " << "Coba.txt"
<< endl;
dl
exit(-1); // keluar dari program
}
// Menutup file
fclose(VarBaca);
}
18
9
fprintf & fscanf
Melakukan pembacaan atau penulisan data
- menggunakan operand fprintf() atau fscanf()
#include <iostream.h>
#include <stdio.h>
Contoh program #i l d <stdlib.h>
#include tdlib h
menulis data ke file:
void main() {
// membuka file
VarTulis = fopen("COBA.TXT", "w");
if(VarTulis==NULL){
cout << " Error buka file : " << "Coba.txt“ << endl;
exit(-1);
}
// Menutup file
19
fclose(VarTulis);
}
Cont’d
Melakukan pembacaan atau penulisan data
- menggunakan operand fprintf() atau fscanf()
#include <iostream.h>
#include <stdio.h>
#include <stdlib.h>
stdlib.h
Contoh program
membaca data ke void main() {
file: // Mendeklarasikan stream untuk proses input
FILE *VarBaca;
char Teks[80];
// membuka file
VarBaca = fopen("COBA.TXT", "r");
if(VarBaca==NULL){
cout << " Error buka file : " << "Coba.txt“ << endl;
exit(-1);
}
while(fscanf(VarBaca,"%s",Teks)!=EOF) {
cout << Teks << “ “;
}
// Menutup file
fclose(VarBaca);
} 20
10
Baca Tulis File
Melakukan pembacaan atau penulisan data
- menggunakan operand fprintf() atau fscanf() dan fgets()
#include <iostream.h>
#include <stdio
<stdio.h>
h>
#include <stdlib.h>
#include <string.h>
void main() {
// membuka file
VarTulis = fopen("COBA.TXT", "w");
if(VarTulis==NULL){
cout << " Error buka file : " << "Coba.txt"
<< endl;
exit(-1);
}
21
strcpy(Teks, "Kalimat
strcpy(Teks Kalimat Pertama");
Pertama );
fprintf(VarTulis,"%20s", Teks); // proses menulis data ke file
cout << Teks;
strcpy(Teks, "Kalimat Kedua");
fprintf(VarTulis,"%20s", Teks); // proses menulis data ke file
cout << Teks;
// Menutup file
fclose(VarTulis);
22
11
Lanjutan …
Baca Tulis File
// membuka file
V B
VarBaca = fopen("COBA.TXT",
f ("COBA TXT" ""r");
")
if(VarBaca==NULL){
cout << " Error buka file : " << "Coba.txt"
<< endl;
exit(-1);
}
// Menutup file
fclose(VarBaca);
}
23
#include <iostream
<iostream.h>
h>
#include <stdio.h>
#include <stdlib.h>
Contoh program menulis #include <string.h>
data ke file:
void main() {
// membuka file
VarTulis = fopen("COBA.TXT", "w");
if(VarTulis==NULL){
cout << " Error buka file : " << "Coba.txt"
<< endl;
exit(-1);
} 24
12
Lanjutan…. fread() and fwrite()
Melakukan pembacaan atau penulisan data
- menggunakan operand fread() atau fwrite()
Sintaks: fwrite (char * buffer, size t, count n, iobuf *);
Contoh p
program
g menulis data ke file:
// membuka file
strcpy(Teks, "Kalimat Pertama");
fwrite(Teks,sizeof(char),20, VarTulis); // proses menulis data ke file
cout << Teks;
strcpy(Teks, "Kalimat Kedua");
fwrite(Teks,sizeof(char),20,
( ( ) VarTulis);
) // pproses menulis data ke file
cout << Teks;
// Menutup file
fclose(VarTulis);
25
#include <iostream
<iostream.h>
h>
#include <stdio.h>
#include <stdlib.h>
Contoh program #include <string.h>
Membaca data ke file:
void main() {
// membuka file
VarBaca = fopen("COBA.TXT", "r");
if(VarBaca==NULL){
cout << " Error buka file : " << "Coba.txt"
<< endl;
exit(-1);
} 26
13
Lanjutan….
Baca Tulis File
// Menutup file
fclose(VarBaca);
27
// membuka file
VarTulis = fopen("COBA.DAT", "w");
if(VarTulis==NULL){
cout << " Error buka file : " << "Coba
Coba.txt
txt“ << endl;
exit(-1);
}
// Menutup file
fclose(VarTulis);
} 28
14
Operand: fwrite
Melakukan penulisan data berupa numerik
- menggunakan operand fwrite()
#include <iostream.h>
#include <stdio.h>
#include <stdlib
<stdlib.h>
h>
// membuka file
VarBaca = fopen("COBA.DAT", "r");
if(VarBaca==NULL){
cout << " Error buka file : " << "Coba.txt" << endl;
exit(-1);
it( 1)
}
// Menutup file
fclose(VarBaca);
}
29
int main() {
// membuka file
p (
VarTulis = fopen("COBA.TXT", "w");)
if(VarTulis==NULL){
cout << " Error buka file : " << "Coba.txt"
<< endl;
exit(-1);
return 0;
}
30
15
Baca Tulis File
Lanjutan….
strcpy(Teks "Kalimat
strcpy(Teks, Kalimat Pertama");
Pertama );
fprintf(VarTulis,"%20s", Teks); // proses menulis data ke file
cout << Teks;
strcpy(Teks, "Kalimat Kedua");
fprintf(VarTulis,"%20s", Teks); // proses menulis data ke file
cout << Teks;
// Menutup file
fclose(VarTulis);
31
Lanjutan….
Baca Tulis File
// membuka file
V B
VarBaca f ("COBA TXT" ""r");
= fopen("COBA.TXT", ")
if(VarBaca==NULL){
cout << " Error buka file : " << "Coba.txt"
<< endl;
exit(-1);
}
32
16
Penambahan Data ke File
ios::at--Places you at the end of the file, but you can write
data anywhere in the file.
33
cout << "\nOpening " << fileName << " in append mode...\n";
34
17
Cont’d
ofstream fout(fileName,ios::app);
if (!fout)
{
cout << "Unable to open " << fileName << " for appending.\n";
return(1);
}
#include <iostream.h>
#include <stdio.h> strcpy(Teks, "Kalimat Pertama");
#include <stdlib.h> fprintf(VarTulis,"%20s", Teks); //
#include <string.h>
g proses menulis data ke file
coutt << Teks;
T k
int main() { strcpy(Teks, "Kalimat Kedua");
fprintf(VarTulis,"%20s", Teks); //
// Mendeklarasikan stream untuk proses input proses menulis data ke file
FILE *VarTulis, *VarBaca; cout << Teks;
char Teks[80];
// Menutup file
// membuka file fclose(VarTulis);
VarTulis = fopen("COBA.TXT", “a");
if(
if(VarTulis==NULL){
li ){
cout << " Error buka file : " << “coba.txt"<< endl;
exit(-1);
return 0;
}
36
18
get dalam iostream
37
Pembacaan string
#include <iostream>
dengn
g gget dapat
p
dilakukan dengan using namespace std;
gunakan tipe karakter
int main()
dalam array {
char stringOne[256];
38
19
getline dalam iostream
#include <iostream>
using namespace std;
getline juga memperoleh
string
t i dari
d i INPUT iint main()
i ()
{
standard, untuk char stringOne[256];
pemasukan data dari char stringTwo[256];
char stringThree[256];
keyboard, maka cout << "Enter string one: ";
penggunaan bersama cin.getline(stringOne,256);
cout << "stringOne: " << stringOne << endl;
cin. cout << "Enter string two: ";
cin getline(stringTwo 256);
cin.getline(stringTwo,256);
cout << "stringTwo: " << stringTwo << endl;
Lihat contoh di samping return 0;
}
39
20
Discussion
41
21