  Ŀ
  Ŀ
                                                                          
                         Dosya lemleri                                  
                                                                          
  ٳ
                                                  Recep Tezkol              
  


 
 QBASIC'te, disk zerinde bulunan dosyalar listelemek iin kullanlan
  yetersiz ve kullansz bir komut (FILES) bulunur. Bu komut dosyalar
  yanlzca ekrana getirdii iin dosya isimlerini bir baka yerde kullamak
  imknszdr. Size dosyalarn isimlerini deikenlere aktarabileceiniz FILES
  komutundan ok daha kullanl FINDFILE fonksiyonunu tantmak istiyorum.
  Bu fonksiyonu Exist fonksiyonu olarakta kullanabilirsiniz. rnein bir
  dosyann disk zerinde olmayan bir dosyay amak istersek bir hata ile
  karlarz. Bu hatann nne "on error" ynlendirmesiyle gemek mmkndr
  ama aada verilen ekilde bu hata nlenebilir.

  Ŀ
     if findfile$("VERI.DAT",&h3F)<>"" then              
              open "i",#1,"VERI.DAT"                     
              ....                                       
              ...                                        
        else                                             
               Print "VERI.DAT dosyas bulunamad."      
      end if                                             
  

  Eer PCTOOLS,NORTON,ANTI-VIRUS vb.. programlar yazmak istiyorsanz
  findfile fonksiyonu ile iiniz ok kolaylaacaktr. Findfile fonksiyonunun
  ilk parametresi arama kouludur ve burada joker('*','?') kullanlabilir.
  kinci parametre ile aranacak dosyalarn niteliini verilir. Bunlar:

         0 = normal dosya
         1 = Yanlz okunur dosya (read-only)
         2 = Gizli dosya (Hidden)
         4 = Sistem dosyas  (System)
         8 = Disk etiketi (label)
        16 = Directory
        32 = arsiv  dir.

  nitelik olarak 63 verirseniz bu niteliklerden herhangi birine sahip
  olan dosyalar aranacaktr. Buna bir rnek verirsek;

  Ŀ
      dim dosya$(50)                                                
      x=1                                                           
      dosya$(x)=findfile$("*.*",63)     'findfirst                  
      do                                                            
        x=x+1                                                       
        dosya$(x)=findfile$("",63)      'findnext                   
        if dosya$(x)="" then x=x-1:exit do                          
      loop                                                          
                                                                    
      for y=1 to x                                                  
       print dosya$(y)     'bulunan dosyalar ekranda gster.       
      next                                                          
  




 