PDA

View Full Version : سوال: سوال در مورد خواندن از روي فايل ( كار بر روي فايل)



ablofazlkianianboohi
یک شنبه 19 دی 1389, 22:08 عصر
سلام دوستان
من مي خواستم از يك فايل txt كه فقط حاوي كلمه ي mohammad است اطلاعات را بخوانم و آن را در متغيري بريزم.
و هم چنين اينكه اين چگونه آدرس جاري برنامه كه ذخيره شده را بدست بياورم؟يعني من فايل ها برنامه و آن فايل txt را در فولدري تحت عنوان c و در درايو d ريخته ام.حالا چگونه آدرس d:/c را بدست بياورم؟

ممنون

tdkhakpur
یک شنبه 19 دی 1389, 22:29 عصر
من مي خواستم از يك فايل txt كه فقط حاوي كلمه ي mohammad است اطلاعات را بخوانم و آن را در متغيري بريزم.

بزار برای این کار زیاده پایین ترین سطح دسترسی به فایل اشتفاده از fopenو fgets و تابعهای مخصوی این روش هست که میتواند در دسترسی فایل به شما کمک کند.
مثلا.
البته نحوه خوانده دیتا از فایل هست


FILE *fp;
chat text[256];
fp = fopen("myfile.txt", "rb+");
if( fp ){
fgets(text, "mohammad", fp);
fclose(fp);
}


و هم چنين اينكه اين چگونه آدرس جاري برنامه كه ذخيره شده را بدست بياورم؟يعني من فايل ها برنامه و آن فايل txt را در فولدري تحت عنوان c و در درايو d ريخته ام.حالا چگونه آدرس d:/c را بدست بياورم؟
رای این کار از getcurdir استفاده کنید مثال زیر مال خود کامپایلر هست.


#include <dir.h>
#include <stdio.h>
#include <string.h>
char *current_directory(char *path)
{
strcpy(path, "X:\\"); /* fill string with form of response: X:\ */
path[0] = 'A' + getdisk(); /* replace X with current drive letter */
getcurdir(0, path+3); /* fill rest of string with current directory */
return(path);
}
int main(void)
{
char curdir[MAXPATH];
current_directory(curdir);
printf("The current directory is %s\n", curdir);

return 0;
}

ali najafi
دوشنبه 20 دی 1389, 10:17 صبح
این همه دردسر نداره!
با یک وقفه ی ساده میشه آدرس جاری رو به دست آورد!

ablofazlkianianboohi
دوشنبه 20 دی 1389, 14:58 عصر
دوستان ممنون از توجه شما
tdkhakpur عزيز
حالا اگر درون فايل txt مقداير تعويض گردند چطور؟
يعني برنامه كل محتواي فايل txt را درون يك متغير بريزد؟


ممنون