باز و بسته کردن یک فایل

به وسیله متد open() در Ruby، می‌توانید یک فایل را باز کنید. این تابع دو پارامتر می‌گیرد. پارامتر اول تعیین کننده نام و آدرس فایل و پارامتر دوم تعیین کننده نحوه باز کردن فایل است. در ادامه به توضیح این پارامترها خواهیم پرداخت. برای کار با این متد، باید خروجی آن را در یک متغیر ذخیره نمود و سپس آن متغیر را در سطح برنامه استفاده نمود. شکل کلی استفاده از این متد به صورت زیر است :

open(filename, mode)

گفتیم که پارامتر دوم تعیین کننده نحوه باز کردن فایل است. این پارامتر می‌تواند یکی از مقادیر جدول زیر را داشته باشد. ضمناً عمکلرد هر مقدار نیز توضیح داده شده است :

مقدار نحوه باز کردن فایل
r در این حالت فایل به صورت فقط خواندنی و از ابتدای آن باز می‌شود. در این حالت امکان تغییر فایل برای کاربر وجود ندارد .
+r در این حالت فایل به صورت خواندنی، قابل ویرایش و از ابتدا باز می‌شود. در این حالت امکان تغییر فایل برای کاربر وجود دارد .
w در این حالت فایل به صورت فقط نوشتنی و قابل تغییر باز می‌شود. در این حالت چنان فایل از قبل وجود داشته باشد، محتویات آن پاک می‌شود. و اگر وجود نداشته باشد، یک فایل جدید ایجاد می‌شود .
+w در این حالت فایل به صورت خواندنی و نوشتنی و قابل تغییر باز می‌شود. در این حالت چنان فایل از قبل وجود داشته باشد، محتویات آن پاک می‌شود. و اگر وجود نداشته باشد، یک فایل جدید ایجاد می‌شود .
a در این حالت فایل باز شده و متن تعیین شده به انتهای آن اضافه می‌شود .
x در این حالت یک فایل جدید با نام تعیین شده ایجاد و به صورت فقط نوشتنی باز می‌شود. چنانچه فایل از قبل وجود داشته باشد، برنامه پیام error صادر کرده و مقدار false را بر می‌گرداند .
+x در این حالت یک فایل جدید با نام تعیین شده ایجاد و به صورت خواندنی و نوشتنی باز می‌شود. چنانچه فایل از قبل وجود داشته باشد، برنامه پیام error صادر کرده و مقدار false را بر می‌گرداند .
t برای باز کردن فایل های متنی به کار می رود (پیشفرض).
b برای باز کردن فایل های باینری به کار می رود.

پس برای باز کردن یک فایل مثلاً Sample.txt که در درایو D قرار دارد، اگر بخواهیم فقط آن را بخوانیم باید به صورت زیر عمل کنیم :

file = open("D:\Sample.txt", "r");

بعد از اینکه فایل را باز کرده و کارهایی را که لازم داریم بر روی آن انجام دادیم لازم است آن را ببندیم. این کار را با استفاده از متد close انجام می‌دهیم. مثلاً فایل باز شده مثال بالا را می‌توان به صورت زیر بست :

file = open("D:\Sample.txt", "r");

file.close();

در این درس شما با نحوه و حالت‌های مختلف باز کردن یک فایل آشنا شدید، اما فعلاً درک کاملی از کاربرد موارد ذکر شده ندارید. در درس‌های آینده با نحوه استفاده از آنها آشنا می‌شوید.