Definisi stream
Stream adalah urutan dari suatu karakter yang disimpan sebagai perangkat penyimpanan data sekunder. Saat program C++ di jalankan, ada 3 standard stream yang aktif yaitu :
1. Standard Input Stream
Mengontrol stream input dari masukan dari keyboard
2. Standard Output Stream
Mengontrol stream output ke monitor
3. Standard Error Stream
mengontrol pesan yang error|
Definisi File
>File adalah kumpulan catatan
>Rekam adalah kumpulan bidang
>Kolom adalah blok dari byte
>Byte adalah kumpulan bit
ada beberapa definisi dari file yaitu :
typedef struct {
int level; // fill/empty level of buffer
unsigned flags; // File status flags
char fd; // File descriptor
unsigned char hold; // Unget char if no buffer
int bsize; // Buffer size
unsigned char *buffer; // Data transfer buffer
unsigned char *curp; // Current active pointer
unsigned istemp; // Temporary file indicator
short token; //digunakan untuk mengecek validitas
} FILE;
Open File
Stream adalah urutan dari suatu karakter yang disimpan sebagai perangkat penyimpanan data sekunder. Saat program C++ di jalankan, ada 3 standard stream yang aktif yaitu :
1. Standard Input Stream
Mengontrol stream input dari masukan dari keyboard
2. Standard Output Stream
Mengontrol stream output ke monitor
3. Standard Error Stream
mengontrol pesan yang error|
Definisi File
>File adalah kumpulan catatan
>Rekam adalah kumpulan bidang
>Kolom adalah blok dari byte
>Byte adalah kumpulan bit
ada beberapa definisi dari file yaitu :
typedef struct {
int level; // fill/empty level of buffer
unsigned flags; // File status flags
char fd; // File descriptor
unsigned char hold; // Unget char if no buffer
int bsize; // Buffer size
unsigned char *buffer; // Data transfer buffer
unsigned char *curp; // Current active pointer
unsigned istemp; // Temporary file indicator
short token; //digunakan untuk mengecek validitas
} FILE;
Open File
untuk membukasuatu file digunakan fopen():
FILE *fopen (const char *filename, const char *mode );
fopen () akan mengembalikan pointer ke awal area buffer. Null akan dikembalikan jika file tidak dapat dibuka.
mode value :
Nilai mode yang memungkinkan:
Deskripsi: Mode:
"R" membuka file untuk dibaca.
"W" membuat file yang akan ditulis.
"A" membuka File untuk menambahkan data.
"R +" membuka File untuk membaca / menulis.
"W +" membuat file untuk dibaca / ditulis.
"A +" membuka File untuk dibaca / ditambahkan
"Rb" membuka File (biner) untuk dibaca.
"WB" membuat file (biner) untuk operasi tulis.
Close File
Close File
untuk Menutup File menggunakan fclose ():
int fclose (FILE * stream);
fclose () didefinisikan pada <stdio.h>
fclose () akan mengembalikan 0 jika berhasil, dan EOF jika terjadi kesalahan
EOF (End Of File) setara dengan -1
fclose () akan merilis area buffer dan segera mengirim data yang tersisa ke file.
Input & Output File
Input & Output File
fgetc (INPUT)
Baca satu karakter dari file
fgetc (stdin) setara dengan getchar ()
Sintaks: int fgetc (FILE * stream);
Kembali ke karakter ketika berhasil, dan EOF saat kesalahan
fputc (OUTPUT)
Menulis satu karakter ke file
fputc ('a', stdout) mirip dengan putchar ('a')
Sintaks: int fputc (int c, FILE * stream);
Kembali ke karakter ketika berhasil, dan EOF jika ada kesalahan
Contoh :
#include <stdio.h>
void main( void ) {
FILE *stream;
char *p, buffer[] = "This is the
line of output\n";
int ch; ch = 0;
stream = stdout;
for( p = buffer; (ch != EOF) &&
(*p != '\0'); p++ )
ch = putc( *p, stream );
}
Contoh membaca file fgetc.c :
#include <stdio.h>
int main(void)
{
char
ch; FILE *fp;
fp=fopen("fgetc.c","r");
if(fp==NULL){
printf("File
fgetc.c can’t be opened\n");
exit(1);
}
while(!feof(fp)){
ch=fgetc(fp); printf("%c",ch);
}
fclose(fp);
return
0;
}
Contoh membaca file fgetc.c dengan fgets :
#include <stdio.h>
int main(void)
{
FILE *fp;
char ss[80];
fp=fopen("fgets.c","r");
if(fp==NULL){
printf("File fgets.c can’t be
opened\n"); exit(1);
}
while(fgets(ss, 80, fp)) printf("%s",ss);
fclose(fp);
return 0;
}
Contoh menulis string ke file test.txt menggunakan fputs:
#include <stdio.h>
int main(void)
{
FILE
*fp;
char ss[80]=“This statement’s saved to file test.txt using fputs";
fp=fopen("test.txt","w");
if(fp==NULL){
printf("File
test.txt can’t be created\n");
exit(1);
}
fputs(ss,
fp);
fclose(fp);
return
0;
}
Contoh membaca file fgets.c menggunakan fgets:
#include <stdio.h>
int main(void)
{
FILE *fp;
char ss[80];
fp=fopen("fgets.c","r");
if(fp==NULL){
printf("File fgets.c can’t be
opened\n"); exit(1);
}
while(fgets(ss, 80, fp)) printf("%s",ss);
fclose(fp);
return 0;
}
Contoh penulisan data ke file test.txt menggunakan fprintf :
#include <stdio.h>
int main(void)
{
FILE *fp;
fp=fopen("test.txt","w");
if(fp==NULL){
printf("File test.txt can’t be
created\n");
exit(1);
}
fprintf(fp,"%d %s %f\n",1,“Amir", 3.95);
fprintf(fp,"%d %s %f\n",2,“Tono", 3.15);
fclose(fp);
return 0;
}
Contoh membaca data dari file test.txt menggunakan fscanf :
#include <stdio.h>
int main(void)
{
FILE
*fp; int no; char name[20]; float gpa;
fp=fopen("test.txt","r");
if(fp==NULL){
printf("File
test.txt can’t be opened\n");
exit(1);
}
fscanf(fp,"%d
%s %f",&no,name, &gpa);
printf("%d
%s %f\n",no,name,gpa);
fscanf(fp,"%d
%s %f",&no,name, &gpa);
printf("%d
%s %f\n",no,name,gpa);
fclose(fp); return 0;
}
Contoh penulisan data ke file biner test.dat menggunakan fwrite :
#include <stdio.h>
int
main(void)
{
FILE *fp;
int Arr[]={1,2,3,4,5};
fp=fopen("test.dat","w");
if(fp==NULL){
printf("File test.dat can’t be created\n");
exit(1);
}
fwrite(Arr,sizeof(Arr),1,fp);
fclose(fp);
return 0;
}
Contoh membaca data dari file biner test.dat menggunakan fread
#include <stdio.h>
int main(void)
{
FILE *fp; int i;
int Arr[5];
fp=fopen("test.dat","r");
if(fp==NULL){
printf("File test.dat can’t be
opened\n");
exit(1);
}
fread(Arr,sizeof(Arr),1,fp);
for(i=0; i<5; i++) printf("%d ",Arr[i]);
fclose(fp);
return 0;
}
Comments
Post a Comment