IRCForumları - IRC ve mIRC Kullanıcılarının Buluşma Noktası

IRCForumları - IRC ve mIRC Kullanıcılarının Buluşma Noktası (https://www.ircforumlari.net/)
-   C ve C++ (https://www.ircforumlari.net/c-ve-c/)
-   -   C De Dosya işlemleri.. (https://www.ircforumlari.net/c-ve-c/318287-c-de-dosya-islemleri.html)

toXic 25 Şubat 2010 14:06

C De Dosya işlemleri..
 
C De Dosya işlemleri Şu (text tabanli) su sekilde yapilir..

Kod:


fopen("Dosya","acissekli");


Dosya, Belirlenen Yerde Var olmasi gerekmektedir. Aksi takdirde Program işlemi gerçekleştirmeyecektir.


Kod:

r -> Okumak icin Kullanilir.
Örneğin ;

Kod:


#define OKU ibo.txt
FILE *dosya;
char buf[BUFSIZE];
dosya = fopen(OKU, "r");
if (dosya != NULL) {
while (fgets(buf, sizeof(buf), dosya)) {
buf[strlen(buf)-1] = 0;
printf("Bilgiler Sunlardir %s\n", buf);
}


Öncelikle Bence, Programda dosya kontrol edilmeli.

Bu sekilde Kontrol edebiliriz.

Kod:

if (dosya != NULL) {
Dosya yok ise;

Kod:


if (dosya != NULL) {
printf("Böyle Bir dosya bulunamadi..");

SEKLİNDE Uyaririz.

eğer dosya var ise ve bilgileri vermek icin.

Kod:


} else {
printf("%s", buf);

Bu sekil devam ederiz.

Kodlarimizi Birleştirirsek;

Kod:


if (dosya != NULL) {
printf("Böyle Bir dosya bulunamadi..");
} else {
printf("%s", buf);
}

Diğeri;

Kod:

w  ->  yazmak icin kullanilir, eğer o isimde bir dosya var ise, silinir 0'lanir. Eğer Dosya olmasa bile, kendisi olusturur..

Basit Bir program yazalim daha iyi anlamak icin. Toplama islemi icin olabilir.

Kod:


#include <stdio.h>
main ()
{
int sayi1;
int sayi2;
int toplam;
// Bunlari kisaca, int sayi1,sayi2,toplam olarakda belirtebiliriz.
 
// toplama islemi.
toplam = sayi1 + sayi2;
// ekrana yazdirma
printf("İki sayi girin.\n");
//sayiyi alma
scanf("%d\n", &sayi1);
scanf("%d\n", &sayi2);
printf("Girdiginiz sayilar %d ve %d toplami %d", sayi1, sayi2, toplam);
return 0;
}

w işlevini kullanmak icin ise, programi su hale getiriyoruz..

Kod:


#include <stdio.h>
main ()
{
int sayi1;
int sayi2;
int toplam;
// Bunlari kisaca, int sayi1,sayi2,toplam olarakda belirtebiliriz.
 
// toplama islemi.
toplam = sayi1 + sayi2;
// ekrana yazdirma
printf("İki sayi girin.\n");
//sayiyi alma
scanf("%d\n", &sayi1);
scanf("%d\n", &sayi2);
printf("Girdiginiz sayilar %d ve %d toplami %d", sayi1, sayi2, toplam);
 FILE *dosya_yaz;
          dosya_yaz=fopen("toxic.txt","w"); 
          fprintf("%d,%d", sayi1, sayi2);
          system("PAUSE");
          return 0;
}

bir diğeri ise;

a -> sona ekleme anlamina gelir..

örneğin;

Kod:

// Dosyaya Yazdirma..
static void.........
..............
...................
..................
......................
....................
// dosya işlemi..
 
time_t irc_time;
                struct tm tdate;
                irc_time = time(NULL);
                tdate = *localtime(&irc_time);
                FILE * pFile;
                pFile = fopen ("operskullananlar.txt", "a");
                fprintf (pFile, "Tarih: %02d-%02d-%02d Saat: %02d:%02d Nick: %s  IP: %s \n", tdate.tm_mday, tdate.tm_mon + 1,
                tdate.tm_year - 100, tdate.tm_hour, tdate.tm_min, sptr->name,  sptr->user->realhost);


Bu sekilde Kullanilir..

Bit tabanlı dosyalar için rb, ab,wb Kullanilir. Ve Bunlarin yaninda + simgesi olursa, hem okuma hemde yazma anlamina gelmektedir..

İyi calismalar..


Tüm Zamanlar GMT +3 Olarak Ayarlanmış. Şuanki Zaman: 14:57.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2025, vBulletin Solutions, Inc.
Search Engine Friendly URLs by vBSEO
Copyright ©2004 - 2025 IRCForumlari.Net Sparhawk