C Programlama Dili Dosyalar 2


Tekrardan  Merhaba 🙂

Bugün Dosyalar da fseek() komutunu inceleyeceğiz. Dosyalardan karakter okuma ve yazdırma nasıl yapılır bunu öğreneceğiz.

Hadi başlayalım 🙂

Öncelikle fseek komutunu inceleyelim ;

  • fseek komutu : fseek() dosya içerisinde istediğimiz yöne hareket etmemizi sağlar.

Genel kullanımı ;

fseek(FILE  *akış, long miktar, başlangıç);

şeklindedir.

akış           =Dosya adıdır.

miktar       =Dosya içerisinde kaç karakter hareket edeceğimizi belirler.

başlangıç  = Dosya içerisinde hangi yöne hareket edeceğimizi söyler. 3 tanedir ve bunlar

                                                            SEEK_END  (Dosya sonu)

                                                            SEEK_SET  (Dosya başı)

                                                            SEEK_CUR (Bulunduğu Nokta)

şeklindedir.

NOT : ftell() dosya içerisinde kaç karakter gittiğimizi sayar.

Aşağıdaki örneği inceleyelim.

Bu örnekte SEEK_SET, SEEK_CUR ve SEEK_END kullanımlarını detaylı bir şekilde bulabilirsiniz.

Lütfen kod üzerindeki açıklama kısımlarını dikkatle inceleyiniz ve kendiniz çeşitli örnekler yazarak deneyiniz !

#include<stdio.h>
main()
{
  FILE *mat;
  char x[11]={'D','E','N','İ','Z','Y','A','L','D','I','Z',}; // Dosyamıza DENİZYALDIZ atayacağız
  char c; //okuduğumuz karakteri atamak için bir c karakteri tanımladık
  int i;
  mat=fopen("x.txt","w+");
  for(i=0;i<11;i++)
  {
    fputc(x[i],mat); // Dosyaya DENİZYALDIZ atadık
  }
  printf("\n >>> fseek(mat,0,SEEK_SET) Dosya Basindan Okudu");
  fseek(mat,0,SEEK_SET);
  printf("\n Dosya Belirleyicisi %d kadar Karekter Saydi", ftell(mat));
  c=fgetc(mat); //okunan karakter c ye atandı.
  printf("\n Okunan Karakter =%c",c); //Burada dosya başından okudu ve D yazdırdı
  
  printf("\n ******************");
  
  printf("\n >>> fseek(mat,0,SEEK_END) Dosya Sonuna Gitti eof ' i Okudu");
  fseek(mat,0,SEEK_END);
  printf("\n Dosya Belirleyicisi %d kadar Karekter Saydi", ftell(mat));
  c=fgetc(mat);
  if(c==EOF)
  {
    printf("\n EOF");
  }
  else
  {
    printf("\n Okunan Karakter =%c",c); //Dosyanın sonuna gönderdik ve orada EOF ı okudu
  }
  
  printf("\n *****************");
  
  printf("\n >>> fseek(mat,-1,SEEK_CUR) Dosya Sonundaydi 1 one gitti okudu");
  fseek(mat,-1,SEEK_CUR);
  printf("\n Dosya Belirleyicisi %d kadar Karekter Saydi", ftell(mat));
  c=fgetc(mat);
  printf("\n Okunan Karakter =%c",c); // İmleç dosya sonundaydı bulunduğu noktadan bir geri geldi ve Z yi okudu
  
  printf("\n *****************");
  
  printf("\n >>> fseek(mat,4,SEEK_SET) Dosyanin Basina Gitti 4 Tane ilerledi Okudu ");
  fseek(mat,4,SEEK_SET);
  printf("\n Dosya Belirleyicisi %d kadar Karekter Saydi", ftell(mat));
  c=fgetc(mat);
  printf("\n Okunan Karakter =%c",c); //Dosyanın boşına giderek oradan 4 karakter ilerledi ve Z yi okudu
  
  printf("\n *****************");
  
  printf("\n >>> fseek(mat,-2,SEEK_CUR) Dosya Sonundaydi 2 one gitti okudu");
  fseek(mat,-2,SEEK_CUR);
  printf("\n Dosya Belirleyicisi %d kadar Karekter Saydi", ftell(mat));
  c=fgetc(mat);
  printf("\n Okunan Karakter =%c",c); //en son Z yi okumuştu ve imlecimiz oradaydı. Bulundğu noktadan 2 geri gitti ve i yi okudu.
  
  fclose(mat);
}

 

[contact-form][contact-field label=”İsim” type=”name” required=”true” /][contact-field label=”E-posta” type=”email” required=”true” /][contact-field label=”İnternet sitesi” type=”url” /][contact-field label=”Mesaj” type=”textarea” /][/contact-form]


Like it? Share with your friends!

C Programlama Dili Dosyalar 2

Giriş Yap

Hoşgeldin
Don't have an account?
Kayıt Ol

Şifreni Yenile

Back to
Giriş Yap

Kayıt Ol

Ekimize Katılmaya Hazırmısın

Back to
Giriş Yap
Choose A Format
Personality quiz
Series of questions that intends to reveal something about the personality
Trivia quiz
Series of questions with right and wrong answers that intends to check knowledge
Poll
Voting to make decisions or determine opinions
Story
Formatted Text with Embeds and Visuals