Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- #include <string.h>
- void tambahIsi();
- void tampilkanIsi();
- void replaceIsi();
- void hapus();
- FILE *f;
- int fileHandle;
- long int ukuranFile;
- int i;
- typedef struct{
- char nama[100];
- char alamat[10];
- } biodata;
- biodata b;
- void tambahIsi(){
- f = fopen("textPercobaan.txt","a");
- if(f == NULL){
- printf("File tidak bisa diproses!");
- exit(1);
- }
- i = 0;
- printf("Masukkan nama anda: "); fflush(stdin); gets(b.nama);
- printf("Masukkan alamat: "); fflush(stdin); gets(b.alamat);
- fwrite(&b, sizeof(b),1,f);
- fclose(f);
- }
- void tampilkanIsi(){
- f = fopen("textPercobaan.txt","r");
- if(f == NULL){
- printf("File tidak bisa diproses!");
- exit(1);
- }
- i = 1;
- fileHandle = fileno(f);
- ukuranFile = filelength(fileHandle);
- if(ukuranFile == -1L){
- printf("Tidak bisa mendapatkan ukuran file");
- fclose(f);
- exit(1);
- }else if(ukuranFile == 0){
- printf("File masih kosong");
- tambahIsi();
- }else{
- printf("====== Tampilkan Semua Data ======\n");
- for(;;){
- fread(&b,sizeof(b),1,f);
- if(feof(f)) break;
- printf("%i. Nama: %s\n",i,b.nama);
- printf(" Alamat: %s\n",b.alamat);
- i++;
- }
- fclose(f);
- printf("===================================\n");
- }
- }
- void replaceIsi(){
- char namaBaru[30];
- char alamatBaru[30];
- int found;
- char cari[20];
- f = fopen("textPercobaan.txt","r+");
- if(f == NULL){
- printf("File tidak bisa diproses!");
- exit(1);
- }
- printf("Masukkan nama yang ingin direplace: "); fflush(stdin); gets(cari);
- found = 0;
- while((fread(&b,sizeof(b),1,f)) > 0 && found == 0){
- if(strcmp(cari,b.nama)==0){
- printf("Nama baru: "); fflush(stdin); gets(b.nama);
- printf("Alamat baru: "); fflush(stdin); gets(b.alamat);
- fseek(f,-(long)sizeof(b),1);
- fwrite(&b, sizeof(b),1,f);
- }
- }
- fclose(f);
- }
- void hapus(){
- FILE *f2;
- char del[20];
- printf("Masukan nama yang ingin dihapus : "); fflush(stdin);gets(del);
- f = fopen("textPercobaan.txt","r");
- f2 = fopen("temp.txt","w");
- rewind(f);
- while(fread(&b,sizeof(b),1,f) > 0){
- if(strcmp(del,b.nama)!=0){
- fwrite(&b,sizeof(b),1,f2);
- printf("berhasil");
- }else if(strcmp(del,b.nama)==0){
- printf("salah");
- }
- }
- fclose(f2);
- fclose(f);
- remove("textPercobaan.txt");
- rename("temp.txt","textPercobaan.txt");
- }
- int main(){
- char pilihMenuUtama;
- while(pilihMenuUtama != '5'){
- printf("Menu Utama\n");
- printf("1. tampilkan isi file\n");
- printf("2. tambahkan isi file\n");
- printf("3. replace isi\n");
- printf("4. bersihkan layar\n");
- printf("5. keluar\n");
- printf("6. Hapus\n");
- printf("Pilihan anda: "); pilihMenuUtama = getche();
- printf("\n\n\n");
- switch(pilihMenuUtama){
- case '1':{
- tampilkanIsi();
- break;
- }
- case '2':{
- tambahIsi();
- break;
- }
- case '3':{
- replaceIsi();
- break;
- }
- case '4':{
- system("cls");
- break;
- }
- case '6':{
- hapus();
- break;
- }
- }
- }
- exit(0);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement