<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: C ile Dosya İşlemleri</title>
	<atom:link href="http://www.bilgisayarkavramlari.com/2008/10/22/c-ile-dosya-islemleri/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.bilgisayarkavramlari.com/2008/10/22/c-ile-dosya-islemleri/</link>
	<description>www.bilgisayarkavramlari.com</description>
	<lastBuildDate>Thu, 09 Feb 2012 15:35:42 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
	<item>
		<title>By: Şadi Evren ŞEKER</title>
		<link>http://www.bilgisayarkavramlari.com/2008/10/22/c-ile-dosya-islemleri/comment-page-2/#comment-64619</link>
		<dc:creator>Şadi Evren ŞEKER</dc:creator>
		<pubDate>Thu, 12 Jan 2012 20:32:02 +0000</pubDate>
		<guid isPermaLink="false">http://www.bilgisayarkavramlari.com/2008/10/22/c-ile-dosya-islemleri/#comment-64619</guid>
		<description>Belki çalışmayan programınızı veya en azından aldığınız hataları yazarsanız yardımcı olabiliriz. 

Başarılar</description>
		<content:encoded><![CDATA[<p>Belki çalışmayan programınızı veya en azından aldığınız hataları yazarsanız yardımcı olabiliriz. </p>
<p>Başarılar</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: hazel</title>
		<link>http://www.bilgisayarkavramlari.com/2008/10/22/c-ile-dosya-islemleri/comment-page-1/#comment-64618</link>
		<dc:creator>hazel</dc:creator>
		<pubDate>Thu, 12 Jan 2012 17:38:38 +0000</pubDate>
		<guid isPermaLink="false">http://www.bilgisayarkavramlari.com/2008/10/22/c-ile-dosya-islemleri/#comment-64618</guid>
		<description>meraba benim  proje ödevm  var ve ve girilen bilgileri güncellemem lazm yaptığım program bi türlü çalışmadı yardımcı olursanız sevinirim...</description>
		<content:encoded><![CDATA[<p>meraba benim  proje ödevm  var ve ve girilen bilgileri güncellemem lazm yaptığım program bi türlü çalışmadı yardımcı olursanız sevinirim&#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Şadi Evren ŞEKER</title>
		<link>http://www.bilgisayarkavramlari.com/2008/10/22/c-ile-dosya-islemleri/comment-page-1/#comment-64604</link>
		<dc:creator>Şadi Evren ŞEKER</dc:creator>
		<pubDate>Mon, 09 Jan 2012 16:43:03 +0000</pubDate>
		<guid isPermaLink="false">http://www.bilgisayarkavramlari.com/2008/10/22/c-ile-dosya-islemleri/#comment-64604</guid>
		<description>Aynen bahsettiğiniz gibi en doğru yol satır okuyup sonra strtok ile parçalamaktır. Struct&#039;a yerleştirmek için de aşağıdaki yöntemi izleyebilirsiniz. 
&lt;pre&gt;
struct k{
 char isim[100];
 char ikinciisim[100];
 char soyisim[100];
} kisi;

int main(){
FILE *fp;
fp=fopen(&quot;dosya.txt&quot;,&quot;r&quot;);
int sayac= 0;
char satir[200];
while(!feof(fp)){
   sayac ++;
   fgets(fp,200,satir);
   char *kelime;
     kelime = strtok (satir,&quot; ,.-&quot;);
     int ksayi = 0; // kelime sayacimizi 0 yapalim
     while (kelime != NULL)
     {
       
       if(ksayi == 0) // sayet 0. kelime ise kesinlikle isimdir
       {
          strcpy(kisi.isim , kelime);
       }
       if(ksayi == 1){ //başka kelime gelene kadar bu bir soy isimdir
          strcpy(kisi.soyisim,kelime);
       }
       if(ksayi == 2){ // sayet yeni bir kelime daha geldiyse, bir onceki ikinci isim bu soyisim demektir
          strcpy(kisi.ikinciisim, kisi.soyisim);
          strcpy(kisi.soyisim,kelime);
      }
      kelime = strtok (NULL, &quot; ,.-&quot;);
      ksayi ++;
       
      
     }
}
fclose(fp);
}
&lt;/pre&gt;
kodu test etmedim ama sanırım çözüm anlaşılıyor. ilk okunan kelime her zaman isim, ikinci kelime okunduğunda soy isim. Şayet 3. kelime gelmezse işlem burada biter. Şayet 3. kelime gelirse soyismi ikinciisme kopyalar sonra gelen kelimeyi de soyisim yaparsınız. 

Bşaarılar
</description>
		<content:encoded><![CDATA[<p>Aynen bahsettiğiniz gibi en doğru yol satır okuyup sonra strtok ile parçalamaktır. Struct&#8217;a yerleştirmek için de aşağıdaki yöntemi izleyebilirsiniz. </p>
<pre>
struct k{
 char isim[100];
 char ikinciisim[100];
 char soyisim[100];
} kisi;

int main(){
FILE *fp;
fp=fopen("dosya.txt","r");
int sayac= 0;
char satir[200];
while(!feof(fp)){
   sayac ++;
   fgets(fp,200,satir);
   char *kelime;
     kelime = strtok (satir," ,.-");
     int ksayi = 0; // kelime sayacimizi 0 yapalim
     while (kelime != NULL)
     {

       if(ksayi == 0) // sayet 0. kelime ise kesinlikle isimdir
       {
          strcpy(kisi.isim , kelime);
       }
       if(ksayi == 1){ //başka kelime gelene kadar bu bir soy isimdir
          strcpy(kisi.soyisim,kelime);
       }
       if(ksayi == 2){ // sayet yeni bir kelime daha geldiyse, bir onceki ikinci isim bu soyisim demektir
          strcpy(kisi.ikinciisim, kisi.soyisim);
          strcpy(kisi.soyisim,kelime);
      }
      kelime = strtok (NULL, " ,.-");
      ksayi ++;

     }
}
fclose(fp);
}
</pre>
<p>kodu test etmedim ama sanırım çözüm anlaşılıyor. ilk okunan kelime her zaman isim, ikinci kelime okunduğunda soy isim. Şayet 3. kelime gelmezse işlem burada biter. Şayet 3. kelime gelirse soyismi ikinciisme kopyalar sonra gelen kelimeyi de soyisim yaparsınız. </p>
<p>Bşaarılar</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: can çetin</title>
		<link>http://www.bilgisayarkavramlari.com/2008/10/22/c-ile-dosya-islemleri/comment-page-1/#comment-64603</link>
		<dc:creator>can çetin</dc:creator>
		<pubDate>Mon, 09 Jan 2012 14:21:06 +0000</pubDate>
		<guid isPermaLink="false">http://www.bilgisayarkavramlari.com/2008/10/22/c-ile-dosya-islemleri/#comment-64603</guid>
		<description>Hocam merhaba.
Ben dosyadan kullanıcı bilgisi okumak istiyorum ve bunları ağaca yerleştirmem gerekiyor.Fakat dosyda bazı kullanıcılar 2 bazıları 3(2 isim ,1 soyisim) isimli.Dolayısıyla kelime kelime okuma yapamıyorum.Okuduğum satırda eğer 3 isimli biri varsa iki ismi name adı altında kaydetmek istiyorum.
Okumayı satır satır yaptım, sonrası için strtok fonksiyonuyla stringi parçaladım, parçaları isim ve soyisim içeren structa nasıl yerleştirebilirim.Teşekkürler.</description>
		<content:encoded><![CDATA[<p>Hocam merhaba.<br />
Ben dosyadan kullanıcı bilgisi okumak istiyorum ve bunları ağaca yerleştirmem gerekiyor.Fakat dosyda bazı kullanıcılar 2 bazıları 3(2 isim ,1 soyisim) isimli.Dolayısıyla kelime kelime okuma yapamıyorum.Okuduğum satırda eğer 3 isimli biri varsa iki ismi name adı altında kaydetmek istiyorum.<br />
Okumayı satır satır yaptım, sonrası için strtok fonksiyonuyla stringi parçaladım, parçaları isim ve soyisim içeren structa nasıl yerleştirebilirim.Teşekkürler.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Burak</title>
		<link>http://www.bilgisayarkavramlari.com/2008/10/22/c-ile-dosya-islemleri/comment-page-1/#comment-64593</link>
		<dc:creator>Burak</dc:creator>
		<pubDate>Sat, 07 Jan 2012 15:30:52 +0000</pubDate>
		<guid isPermaLink="false">http://www.bilgisayarkavramlari.com/2008/10/22/c-ile-dosya-islemleri/#comment-64593</guid>
		<description>İlginiz ve yardımınız için çok teşekkür ederim program şu anda düzgün çalışıyor.</description>
		<content:encoded><![CDATA[<p>İlginiz ve yardımınız için çok teşekkür ederim program şu anda düzgün çalışıyor.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Şadi Evren ŞEKER</title>
		<link>http://www.bilgisayarkavramlari.com/2008/10/22/c-ile-dosya-islemleri/comment-page-1/#comment-64590</link>
		<dc:creator>Şadi Evren ŞEKER</dc:creator>
		<pubDate>Sat, 07 Jan 2012 05:15:37 +0000</pubDate>
		<guid isPermaLink="false">http://www.bilgisayarkavramlari.com/2008/10/22/c-ile-dosya-islemleri/#comment-64590</guid>
		<description>Muhtemelen kodunuzun diğer kısılarında bir problem var. Kodunuzu okudum ve hata bulamadım. Emin olmak için sizin yolladığınız kodu esas alarak geri kalan kısmı hızlıca yazdım ve aşağıdaki şekilde kodda hata olmadan çalışıyor:
&lt;pre&gt;
SADIs-MacBook-Air:~ sadievrenseker$ vi dosyadeneme.c 

#include &lt;stdio.h&gt;
#include &lt;string.h&gt;
typedef struct{
        char ad[5];
}k;
int main(){
        FILE *f;
        f = fopen(&quot;veri.txt&quot;,&quot;wb&quot;);

        int uzun = 5;
        char arananad[100];
        k kitap;
        strcpy(kitap.ad , &quot;ali&quot;);
        fwrite(&amp;kitap,uzun,1,f);
        strcpy(kitap.ad , &quot;veli&quot;);
        fwrite(&amp;kitap,uzun,1,f);
        strcpy(kitap.ad , &quot;ahmet&quot;);
        fwrite(&amp;kitap,uzun,1,f);
        strcpy(kitap.ad , &quot;hasan&quot;);
        fwrite(&amp;kitap,uzun,1,f);
        strcpy(kitap.ad , &quot;sadi&quot;);
        fwrite(&amp;kitap,uzun,1,f);
        fclose(f);

        printf(&quot;\naramak istediginiz kitabin ismini yaziniz:&quot;);
        f=fopen(&quot;veri.txt&quot;,&quot;rb&quot;);
        gets(arananad);
        rewind(f);
        int sayi = 5;
        int sayac = 0;
                int i;
                for (i=0;i&lt;sayi;i++)
                {
                                int k = fseek (f, i*uzun, SEEK_SET);
                                fread(&amp;kitap,uzun,1,f);
                                int s=strcmp(kitap.ad,arananad);
                                if (s==0)
                                {
                                        printf(&quot;\nAranan kitap %d. kayittadir.&quot;,i+1);
                                        sayac=sayac+1;
                                }
                }
                if(sayac==0)
                        printf(&quot;\naranan kitap bulunamadi.&quot;);
}
&lt;/pre&gt;
Örnek bir iki ekran çıktısı aşağıdaki şekilde:
&lt;pre&gt;
SADIs-MacBook-Air:~ sadievrenseker$ gcc dosyadeneme.c 
SADIs-MacBook-Air:~ sadievrenseker$ ./a.out

warning: this program uses gets(), which is unsafe.
aramak istediginiz kitabin ismini yaziniz:ali

Aranan kitap 1. kayittadir.SADIs-MacBook-Air:~ sadievrenseker$ ./a.out

warning: this program uses gets(), which is unsafe.
aramak istediginiz kitabin ismini yaziniz:ahmet

Aranan kitap 3. kayittadir.SADIs-MacBook-Air:~ sadievrenseker$ ./a.out

warning: this program uses gets(), which is unsafe.
aramak istediginiz kitabin ismini yaziniz:veli

Aranan kitap 2. kayittadir.
&lt;/pre&gt;
Çok büyük ihtimalle dosyayı oluştururken veya struct yapısında hatalarınız olabilir. 

Başarılar</description>
		<content:encoded><![CDATA[<p>Muhtemelen kodunuzun diğer kısılarında bir problem var. Kodunuzu okudum ve hata bulamadım. Emin olmak için sizin yolladığınız kodu esas alarak geri kalan kısmı hızlıca yazdım ve aşağıdaki şekilde kodda hata olmadan çalışıyor:</p>
<pre>
SADIs-MacBook-Air:~ sadievrenseker$ vi dosyadeneme.c 

#include &lt;stdio.h&gt;
#include &lt;string.h&gt;
typedef struct{
        char ad[5];
}k;
int main(){
        FILE *f;
        f = fopen("veri.txt","wb");

        int uzun = 5;
        char arananad[100];
        k kitap;
        strcpy(kitap.ad , "ali");
        fwrite(&#038;kitap,uzun,1,f);
        strcpy(kitap.ad , "veli");
        fwrite(&#038;kitap,uzun,1,f);
        strcpy(kitap.ad , "ahmet");
        fwrite(&#038;kitap,uzun,1,f);
        strcpy(kitap.ad , "hasan");
        fwrite(&#038;kitap,uzun,1,f);
        strcpy(kitap.ad , "sadi");
        fwrite(&#038;kitap,uzun,1,f);
        fclose(f);

        printf("\naramak istediginiz kitabin ismini yaziniz:");
        f=fopen("veri.txt","rb");
        gets(arananad);
        rewind(f);
        int sayi = 5;
        int sayac = 0;
                int i;
                for (i=0;i&lt;sayi;i++)
                {
                                int k = fseek (f, i*uzun, SEEK_SET);
                                fread(&#038;kitap,uzun,1,f);
                                int s=strcmp(kitap.ad,arananad);
                                if (s==0)
                                {
                                        printf("\nAranan kitap %d. kayittadir.",i+1);
                                        sayac=sayac+1;
                                }
                }
                if(sayac==0)
                        printf("\naranan kitap bulunamadi.");
}
</pre>
<p>Örnek bir iki ekran çıktısı aşağıdaki şekilde:</p>
<pre>
SADIs-MacBook-Air:~ sadievrenseker$ gcc dosyadeneme.c
SADIs-MacBook-Air:~ sadievrenseker$ ./a.out

warning: this program uses gets(), which is unsafe.
aramak istediginiz kitabin ismini yaziniz:ali

Aranan kitap 1. kayittadir.SADIs-MacBook-Air:~ sadievrenseker$ ./a.out

warning: this program uses gets(), which is unsafe.
aramak istediginiz kitabin ismini yaziniz:ahmet

Aranan kitap 3. kayittadir.SADIs-MacBook-Air:~ sadievrenseker$ ./a.out

warning: this program uses gets(), which is unsafe.
aramak istediginiz kitabin ismini yaziniz:veli

Aranan kitap 2. kayittadir.
</pre>
<p>Çok büyük ihtimalle dosyayı oluştururken veya struct yapısında hatalarınız olabilir. </p>
<p>Başarılar</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Burak</title>
		<link>http://www.bilgisayarkavramlari.com/2008/10/22/c-ile-dosya-islemleri/comment-page-1/#comment-64589</link>
		<dc:creator>Burak</dc:creator>
		<pubDate>Fri, 06 Jan 2012 22:38:42 +0000</pubDate>
		<guid isPermaLink="false">http://www.bilgisayarkavramlari.com/2008/10/22/c-ile-dosya-islemleri/#comment-64589</guid>
		<description>merhabalar benim bir ödevim için dosya da arama yapmam gerekiyor ancak yazdığım kod ile sadece ilk satıra bakabiliyorum aradığım kitap 2. satırda ise bulunmadı diye uyarı veriyor. yazdığım kodu aşağı ekliyorum. nerede hatam olduğu konusunda beni bilgilendirirseniz çok sevinirim. 1 gündür bu hatayı düzeltmek için uğraşıyorum.

kodlar aşağıda ki gibidir...
&lt;pre&gt;
printf(&quot;\naramak istediginiz kitabin ismini yaziniz:&quot;); 
gets(arananad);
rewind(f);
		for (i=0;i&lt;sayi;i++)
		{
				k = fseek (f, i*uzun, SEEK_SET);
				fread(&amp;kitap,uzun,1,f);
				s=strcmp(kitap.ad,arananad);
				if (s==0)
				{
					printf(&quot;\nAranan kitap %d. kayittadir.&quot;,i+1);
					sayac=sayac+1;
				}
			}
			if(sayac==0)
				printf(&quot;\naranan kitap bulunamadi.&quot;);</description>
		<content:encoded><![CDATA[<p>merhabalar benim bir ödevim için dosya da arama yapmam gerekiyor ancak yazdığım kod ile sadece ilk satıra bakabiliyorum aradığım kitap 2. satırda ise bulunmadı diye uyarı veriyor. yazdığım kodu aşağı ekliyorum. nerede hatam olduğu konusunda beni bilgilendirirseniz çok sevinirim. 1 gündür bu hatayı düzeltmek için uğraşıyorum.</p>
<p>kodlar aşağıda ki gibidir&#8230;</p>
<pre>
printf("\naramak istediginiz kitabin ismini yaziniz:");
gets(arananad);
rewind(f);
		for (i=0;i&lt;sayi;i++)
		{
				k = fseek (f, i*uzun, SEEK_SET);
				fread(&amp;kitap,uzun,1,f);
				s=strcmp(kitap.ad,arananad);
				if (s==0)
				{
					printf(&quot;\nAranan kitap %d. kayittadir.&quot;,i+1);
					sayac=sayac+1;
				}
			}
			if(sayac==0)
				printf(&quot;\naranan kitap bulunamadi.&quot;);</pre>
]]></content:encoded>
	</item>
	<item>
		<title>By: Şadi Evren ŞEKER</title>
		<link>http://www.bilgisayarkavramlari.com/2008/10/22/c-ile-dosya-islemleri/comment-page-1/#comment-64587</link>
		<dc:creator>Şadi Evren ŞEKER</dc:creator>
		<pubDate>Fri, 06 Jan 2012 21:20:15 +0000</pubDate>
		<guid isPermaLink="false">http://www.bilgisayarkavramlari.com/2008/10/22/c-ile-dosya-islemleri/#comment-64587</guid>
		<description>Sorunuzun dosya işlemleri ile ilgisi yok. AVL ağacı ile ilgili bilgiler daha önce yazdığım sayfaların bağlantılarında mevcut, bu sayfalara bakabilirsiniz. 
Yine de sorunuza cevap olması açısından AVL ağaçları ikili arama ağacı şeklindedir. Yapmanız gereken tek şey ikili arama ağaçlarına ekleme işlemini kodlamanız (ki bu konu ile ilgili yazılarda da gerekli kodları ve açıklamaları yayınlamıştım). İlave olarak derinliği ölçmeniz ve gerekli durumlarda ağacı dengelemenizdir. Yine de sorun yaşarsanız ilgili yazının altına yorum yazın, yardımcı olmaya çalışırım. 

Başarılar</description>
		<content:encoded><![CDATA[<p>Sorunuzun dosya işlemleri ile ilgisi yok. AVL ağacı ile ilgili bilgiler daha önce yazdığım sayfaların bağlantılarında mevcut, bu sayfalara bakabilirsiniz.<br />
Yine de sorunuza cevap olması açısından AVL ağaçları ikili arama ağacı şeklindedir. Yapmanız gereken tek şey ikili arama ağaçlarına ekleme işlemini kodlamanız (ki bu konu ile ilgili yazılarda da gerekli kodları ve açıklamaları yayınlamıştım). İlave olarak derinliği ölçmeniz ve gerekli durumlarda ağacı dengelemenizdir. Yine de sorun yaşarsanız ilgili yazının altına yorum yazın, yardımcı olmaya çalışırım. </p>
<p>Başarılar</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: bil.ögr</title>
		<link>http://www.bilgisayarkavramlari.com/2008/10/22/c-ile-dosya-islemleri/comment-page-1/#comment-64581</link>
		<dc:creator>bil.ögr</dc:creator>
		<pubDate>Thu, 05 Jan 2012 18:01:25 +0000</pubDate>
		<guid isPermaLink="false">http://www.bilgisayarkavramlari.com/2008/10/22/c-ile-dosya-islemleri/#comment-64581</guid>
		<description>bende zeynep&#039;in sorusuna benzer bir soru sormak istiyorum. dosyadaki kelimeleri diziye atacak o diziden döngüyle tek tek AVL ağacına ekleyecek daha sonra arama işlemini AVL ağac üzerinden gerçekleyecek. yazdığınız kod çalışıyor fakat ağaca atılmadığı için arama işlemini gerçekleştiremiyor.onun için ne yapmalıyım?</description>
		<content:encoded><![CDATA[<p>bende zeynep&#8217;in sorusuna benzer bir soru sormak istiyorum. dosyadaki kelimeleri diziye atacak o diziden döngüyle tek tek AVL ağacına ekleyecek daha sonra arama işlemini AVL ağac üzerinden gerçekleyecek. yazdığınız kod çalışıyor fakat ağaca atılmadığı için arama işlemini gerçekleştiremiyor.onun için ne yapmalıyım?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Şadi Evren ŞEKER</title>
		<link>http://www.bilgisayarkavramlari.com/2008/10/22/c-ile-dosya-islemleri/comment-page-1/#comment-64575</link>
		<dc:creator>Şadi Evren ŞEKER</dc:creator>
		<pubDate>Thu, 05 Jan 2012 02:52:48 +0000</pubDate>
		<guid isPermaLink="false">http://www.bilgisayarkavramlari.com/2008/10/22/c-ile-dosya-islemleri/#comment-64575</guid>
		<description>Veri ya dizide durur ya AVL ağacında. Hem AVL ağacı hem dizi olmaz. 
Sorunuza gelince aşağıdaki gibi bir kod işinizi görmeli:
&lt;pre&gt;
FILE *fp;
fp=fopen(&quot;dosya.txt&quot;,&quot;r&quot;);
int sayac= 0;
char satir[200];
while(!feof(fp)){
   sayac ++;
   fgets(fp,200,satir);
   char *kelime;
     kelime = strtok (satir,&quot; ,.-&quot;);
     while (kelime != NULL)
     {
       printf (&quot;%s %d\n&quot;,kelime,sayac);
       // AVL_EKLE(kelime,sayac);
       kelime = strtok (NULL, &quot; ,.-&quot;);
     }
}
fclose(fp);
&lt;/pre&gt;
Yukarıdaki kodu çalıştırıp test etmedim ama sanırım çalışması gerek. Kısaca dosyadan satır satır okuyup her satırı string tokenizer sayesinde parçalıyoruz ve kelimeleri alıyoruz. Her satır için sayaç kullanarak parçalama sonucunda kelime ve kaçıncı satırda olduğunu beraber ekrana yazıyoruz. Ayrıca yorum satırı olarak AVL ağacına ekleyeceğiniz yer de kodda gösteriliyor. 

Daha fazla bilgi için aşağıdaki yazıları okumanızda fayda olabilir:
http://www.bilgisayarkavramlari.com/2008/12/20/string-tokenizer-dizgi-parcalayici/
http://www.bilgisayarkavramlari.com/2008/05/15/avl-agaci-avl-tree/
http://www.bilgisayarkavramlari.com/2008/05/15/agaclarda-dengeleme-rotation-balancing/

Başarılar</description>
		<content:encoded><![CDATA[<p>Veri ya dizide durur ya AVL ağacında. Hem AVL ağacı hem dizi olmaz.<br />
Sorunuza gelince aşağıdaki gibi bir kod işinizi görmeli:</p>
<pre>
FILE *fp;
fp=fopen("dosya.txt","r");
int sayac= 0;
char satir[200];
while(!feof(fp)){
   sayac ++;
   fgets(fp,200,satir);
   char *kelime;
     kelime = strtok (satir," ,.-");
     while (kelime != NULL)
     {
       printf ("%s %d\n",kelime,sayac);
       // AVL_EKLE(kelime,sayac);
       kelime = strtok (NULL, " ,.-");
     }
}
fclose(fp);
</pre>
<p>Yukarıdaki kodu çalıştırıp test etmedim ama sanırım çalışması gerek. Kısaca dosyadan satır satır okuyup her satırı string tokenizer sayesinde parçalıyoruz ve kelimeleri alıyoruz. Her satır için sayaç kullanarak parçalama sonucunda kelime ve kaçıncı satırda olduğunu beraber ekrana yazıyoruz. Ayrıca yorum satırı olarak AVL ağacına ekleyeceğiniz yer de kodda gösteriliyor. </p>
<p>Daha fazla bilgi için aşağıdaki yazıları okumanızda fayda olabilir:<br />
<a href="http://www.bilgisayarkavramlari.com/2008/12/20/string-tokenizer-dizgi-parcalayici/" rel="nofollow">http://www.bilgisayarkavramlari.com/2008/12/20/string-tokenizer-dizgi-parcalayici/</a><br />
<a href="http://www.bilgisayarkavramlari.com/2008/05/15/avl-agaci-avl-tree/" rel="nofollow">http://www.bilgisayarkavramlari.com/2008/05/15/avl-agaci-avl-tree/</a><br />
<a href="http://www.bilgisayarkavramlari.com/2008/05/15/agaclarda-dengeleme-rotation-balancing/" rel="nofollow">http://www.bilgisayarkavramlari.com/2008/05/15/agaclarda-dengeleme-rotation-balancing/</a></p>
<p>Başarılar</p>
]]></content:encoded>
	</item>
</channel>
</rss>

