بایگانی برچسب: s

آموزش زبان ++C - مقدمه

آموزش برنامه نویسی ++C – فایل ها | قسمت سوم

علاوه بر حالت های r ( read ) برای خواندن از فایل و w ( write ) برای نوشتن در فایل یک حالت دیگر هم وجود دارد به نام a.
وقتی فایلی را در حالت w باز می کنیم تمام متن داخل آن حذف می شود و سپس می توانیم متن جدید را در فایل اضافه کنیم ولی وقتی فایل را در حالت a باز کنیم متن داخل فایل حذف نمی شود و هر متن جدیدی که به فایل اضافه کنیم در آخر متن پیش فرضیمان قرار می گیرد.

حالت a

مثال: فایلی با نام a.txt در دایرکتوری زیر قرار دارد که متن hello در آن نوشته شده است. می خواهیم با استفاده از برنامه نویسی متن world را به آخر متن hello که به طور پیش فرض در فایل قرار داده شده است اضافه کنیم.
دایرکتوری:

C:\TurboC++\Disk\TurboC3\BIN

کد:

توضیحات: همانگونه که در توضیحات بالا خواندید فایل را در حالت a باز می کنیم سپس تغییرات جدید را روی آن اعمال می کنیم.
تمرین: برنامه ای بنویسید دو فایل a.txt و b.txt که در دایرکتوری زیر قرار دارند را باز کرده متن فایل b.txt را خوانده و به آخر متن فایل a.txt اضافه کند.
دارکتوری: مسیر پیش فرض برنامه ی نصب شده ی توربو

C:\TurboC++\Disk\TurboC3\BIN

متن پیش فرض در فایل hello : a.txt
متن پیش فرض در فایل world : b.txt
کد:

توضیحات: طبق تعریفات بالا ما باید دو متغیر از نوع فایل ایجاد کنیم برای باز کردن فایل های a.txt در حالت a برای نوشتن متن در آخر متن پیش فرض قرار داده شده و فایل b.txt در حالت r برای خواندن متن از آن.
طبق گفته ی بالا کار ها را در کد انجام داده ایم سپس یک حلقه ی while ایجاد می کنیم برای خواندن تک تک کاراکتر های درون فایل b.txt و قرار دادن همان کاراکتر ها با استفاده از تابع fputc در فایل a.txt.
تابع fcloseall بعد از کد های حلقه ی while : اگر چند فایل باز در برنامه دارید برای بستن تمام آن ها می توانید از این تابع استفاده کنید.
خروجی :
متن جدیدی که در فایل a.txt قرار گرفته است:

hello world

برای نمایش داده شدن فرمت فایل ها وقتی فایلی را به صورت گرافیکی در دایرکتوری در ویندوز می توانید از راحل زیر استفاده کنید:
۱- گزینه ی folder options در قسمت تنظیمات my computer ( در ویندوز های مختلف جای آن متفاوت است)
folder_options
۲- سربرگ view
۳- در قسمت Advanced Setting تیک گزینه ی Hide exensions for know file type را بردارید
۴- Ok
settings

آموزش زبان ++C - مقدمه

آموزش برنامه نویسی ++C – فایل ها – قسمت دوم

فرض کنید فایلی با نام a.txt در این مسیر قرار دارد:

C:\TurboC++\Disk\TurboC3\a.txt

برای باز کردن فایل از دو مسیر آن می توانیم استفاده کنیم
مسیر مطلق:

C:\TurboC++\Disk\TurboC3\a.txt

مسیر نسبی: چون برنامه ی توربو در این مسیر C:\TurboC++\Disk\TurboC3\BIN باز می شود برای دسترسی به فایل باید یک دایرکتوری به عقب بیاییم و سپس فایل را باز کنیم.
در داخل هر دایرکتوری دو دایرکتوری وجود دارد ( در واقع فایل هستند ) با نام های . (نقطه) و .. ( دونقطه ) که ما آنها را نمی بینیم.
برای دیدن آن ها در ویندوز cmd را فعال باز می کنیم سپس دستور dir را می نویسیم که علاوه بر فایل ها و دایرکتوری ها فایل نقطه و دو نقطه نیز نمایش داده می شوند.
برای دیدن آن ها در لینوکس پس از باز کردن terminal دستور ls –a را نوشته و این دو فایل یا دایرکتوری نمایش داده می شوند.
نقطه نشان دهنده ی همان دایرکتوری و دو نقطه برای دسترسی به یک دایرکتوری عقب تر است.
پس مسیر نسبی فایل a.txt می شود :

..\a.txt

در cmd ویندوز:
cmd_file
در terminal لینوکس:
terminal_file
با زدن دستور ls -a میتوانیم آن ها را ببینیم.
توضیحات: یک دایرکتوری به عقب میاییم سپس به فایل دسترسی پیدا می کنیم.
مثال: در دایرکتوری زیر یک فایل با نام a.txt قرار دارد که متن داخل آن hello world است با مسیر نسبی به آن دسترسی پیدا کنید و متن آن را نمایش دهید

C:\TurboC++\Disk\TurboC3\a.txt

خروجی:

hello world

توضیحات: مسیر فایل نسبی را در توضیحات بالا گفتم و طریقه ی خواندن فایل را هم در مقاله ی قبلی توضیح داده ام.

نوشتن فایل

برای نوشتن در فایل باید فایل را در حال w (write) باز کنیم و با استفاده از تابع های مخصوص نوشتن در فایل نوشت.
نکته: وقتی می خواهیم فایلی را باز کنیم به تابع fopen مسیر می دهیم و اگر فایل باشد تمام متن داخل آن پاک می شود و متنی که مورد نظرمان است را در فایل می نویسیم ولی اگر فایل نباشد یک فایل ایجاد می شود و سپس متنمان را در آن وارد می کنیم.
مثال: فایلی در مسیر زیر ایجاد کنید با نام a.txt که متن hello world را در آن نوشته و آن را save کنید سپس با برنامه نویسی در توربو C++ متن hello world را با کاراکتر h عوض کنید.
مسیر save فایل a.txt :

C:\TurboC++\Disk\TurboC3\BIN

کد:

اگر دوباره فایل را باز کنید تنها کاراکتر h را میبینید که در فایل نوشته شده است.
توضیحات:
کد:

در حالت write آن را باز می کنیم یعنی به جای گذاشتن حرف r به جای آرگومان دوم تابع fopen حرف w را می گذاریم.
کد:

تابع fputc یک کاراکتر را به عنوان آرگومان اول گرفته و در فایلمان که به عنوان آرگومان دوم می گیرد قرار می دهد.
کد:

همانگونه که وقتی متنی را در فایلی تغییر می دهیم باید آن را save کنیم در حالت نوشتن هم باید در آخر پس از انجام کارهایمان در فایل آن را با تابع fclose که آرگومان آن نوع متغیر فایل است ببندیم.

نوشتن متن یا رشته در فایل

از تابع fputs استفاده می کنیم.
مثال: ابتدا فایل a.txt را حذف می کنیم.
کد:

توضیحات:
چون فایلمان وجود ندارد پس برنامه یک فایل با نام a.txt در مسیر پیش فرض که برنامه ی توربو در آن مسیر باز می شود ایجاد می کند سپس تابع fputs یک رشته را به عنوان آرگومان می گیرد و در فایل مورد نظرمان که به عنوان آرگومان دوم به آن داده ایم می نویسد.