آبجی
15th February 2010, 02:09 AM
کار با فایل در ویژوال بیسیک - بخش اول
مقدمه
بعلت عدم وجود اشاره گر در ویژوال بیسیک عملیات کار با فایلها در آن نسبتاً ساده می باشد .
بطور کلی فایلها بر دو نوع هستند :
1 - فایلهای متنی Text File : این فایلها فقط شامل کاراکترهای اسکی و برخی کاراکترهای خاص مانند انتهای خط و انتهای فایل هستند .
۲ - فایلهای باینری Binary File : شامل هر نوع کاراکتری می توانند باشند و کاربردهای گسترده ای دارند مانند بانک های اطلاعاتی ، فایلهای اجرائی ، فایلهای گرافیکی و غیره
ویژوال بیسیک می تواند با هر دو نوع فایل کار کند .
چگونگی باز کردن فایلها
قبل از اینکه بتوان عملیات ورودی/خروجی را روی یک فایل انجام داد ابتدا بایستی آنرا باز کرد . باز کردن فایلها در ویژوال بیسیک توسط دستور Open انجام می شود . فرمت کلی این دستور بصورت زیر است :
Open filename [For mode] [Access access][lock] As [#]filenumber [Len=reclen]x
[ پارامترهای داخل کروشه اختیاری هستند . ]
filename نام فایلی است که می خواهیم آنرا باز کنیم .
mode حالت باز کردن فایل است . این حالتها عبارتند از :
- Input : فایل بعنوان ورودی باز می شود .
- Output : فایل بعنوان خروجی باز می شود .
- Binary : فایل از نوع باینری باز می شود .
- Append : فایل طوری باز می شود که بتوان به انتهای آن چیزی اضافه کرد .
- Random
access نوع دسترسی به فایل را مشخص می کند . انواع دسترسیها عبارتند از :
- Read : خواندن فایل
- Write : نوشتن در فایل
- ReadWrite : خواندن و نوشتن فایل
lock نوع دسترسی سایر برنامه ها به این فایل را مشخص می کند . انواع دسترسیها عبارتند از :
- Shared : دسترسی اشتراکی
- Lock Read
- Lock Write
- Lock Read Write
filenumber عددی است که ویژوال بیسیک از آن برای دسترسی به فایل استفاده می کند .این عدد بایستی برای هر فایل منحصر بفرد و بین ۱ تا ۵۱۱ باشد . برای بدست آوردن اولین شماره آزاد می توان از تابع FreeFile استفاده کرد .
reclen :طول بافر فایل است . این عدد بایستی از ۳۲۷۶۷ کو چکتر باشد .
در صورتی که فایلی که توسط filename مشخص شده وجود نداشته و فایل برای Append ، Binary ، Output و یا Random باز شده باشد در اینصورت یک فایل جدید با این نام ساخته می شود .
در صورتی که فایل بصورت باینری باز شده باشد پارامتر Len نادیده گرفته می شود .
چگونگی بستن فایل
پس از پایان کار با فایل برای بستن آن از دستور Close استفاده می کنیم . فرمت این دستور بصورت زیر است :
Close #filenumber
دستور Close بدون هیچ پارامتری تمام فایلهای باز را می بندد .
کار با دایرکتوری
۱ - گرفتن Dir : توسط دستور Dir می توان نام فایلهای موجود در یک دایرکتوری را بر اساس پارامترهایی که به آن می دهیم پیدا کنیم . برای مثال :
Myfile=Dir$("c:\text\*.txt)"x
دستور فوق نام اولین فایل موجود در دایرکتوری C:\TEXT را که پسوند آنها txt باشد در متغیر Myfile قرار می دهد . اگر دستور فوق را بدون پارامتر مجدداً اجرا کنیم نام دومین فایل برگرداننده می شد و الی آخر
Dir دارای یک پارامتر اختیاری است که نوع فایلهای مورد نظر را نیز می توان با آن مشخص نمود . مثال :
Myfile=Dir$("c:\text\*.txt",vbNormal)x
مقادیر ممکن این پارامتر عبارتند از :
vbNormal ، vbHidden ، vbSystem ، vbDirectory
۲ - تغییر دایرکتوری : برای تغییر دایرکتوری از دستور ChDir استفاده می شود مثال :
ChDir "c:\windows\system32"x
۳ - تغییر درایو : برای تغییر درایو از دستور ChDrive استفاده می شود مثال :
ChDrive "E:"x
۴ - ساخت دایرکتوری : برای ایجاد دایرکتوری جدید از دستور MKDir استفاده می شود مثال :
MKDir "c:\MyFolder"x
۵ - حذف دایرکتوری : برای حذف دایرکتوری از دستور RmDir استفاده می شود مثال :
RmDir "C:\MyFoler"x
مقدمه
بعلت عدم وجود اشاره گر در ویژوال بیسیک عملیات کار با فایلها در آن نسبتاً ساده می باشد .
بطور کلی فایلها بر دو نوع هستند :
1 - فایلهای متنی Text File : این فایلها فقط شامل کاراکترهای اسکی و برخی کاراکترهای خاص مانند انتهای خط و انتهای فایل هستند .
۲ - فایلهای باینری Binary File : شامل هر نوع کاراکتری می توانند باشند و کاربردهای گسترده ای دارند مانند بانک های اطلاعاتی ، فایلهای اجرائی ، فایلهای گرافیکی و غیره
ویژوال بیسیک می تواند با هر دو نوع فایل کار کند .
چگونگی باز کردن فایلها
قبل از اینکه بتوان عملیات ورودی/خروجی را روی یک فایل انجام داد ابتدا بایستی آنرا باز کرد . باز کردن فایلها در ویژوال بیسیک توسط دستور Open انجام می شود . فرمت کلی این دستور بصورت زیر است :
Open filename [For mode] [Access access][lock] As [#]filenumber [Len=reclen]x
[ پارامترهای داخل کروشه اختیاری هستند . ]
filename نام فایلی است که می خواهیم آنرا باز کنیم .
mode حالت باز کردن فایل است . این حالتها عبارتند از :
- Input : فایل بعنوان ورودی باز می شود .
- Output : فایل بعنوان خروجی باز می شود .
- Binary : فایل از نوع باینری باز می شود .
- Append : فایل طوری باز می شود که بتوان به انتهای آن چیزی اضافه کرد .
- Random
access نوع دسترسی به فایل را مشخص می کند . انواع دسترسیها عبارتند از :
- Read : خواندن فایل
- Write : نوشتن در فایل
- ReadWrite : خواندن و نوشتن فایل
lock نوع دسترسی سایر برنامه ها به این فایل را مشخص می کند . انواع دسترسیها عبارتند از :
- Shared : دسترسی اشتراکی
- Lock Read
- Lock Write
- Lock Read Write
filenumber عددی است که ویژوال بیسیک از آن برای دسترسی به فایل استفاده می کند .این عدد بایستی برای هر فایل منحصر بفرد و بین ۱ تا ۵۱۱ باشد . برای بدست آوردن اولین شماره آزاد می توان از تابع FreeFile استفاده کرد .
reclen :طول بافر فایل است . این عدد بایستی از ۳۲۷۶۷ کو چکتر باشد .
در صورتی که فایلی که توسط filename مشخص شده وجود نداشته و فایل برای Append ، Binary ، Output و یا Random باز شده باشد در اینصورت یک فایل جدید با این نام ساخته می شود .
در صورتی که فایل بصورت باینری باز شده باشد پارامتر Len نادیده گرفته می شود .
چگونگی بستن فایل
پس از پایان کار با فایل برای بستن آن از دستور Close استفاده می کنیم . فرمت این دستور بصورت زیر است :
Close #filenumber
دستور Close بدون هیچ پارامتری تمام فایلهای باز را می بندد .
کار با دایرکتوری
۱ - گرفتن Dir : توسط دستور Dir می توان نام فایلهای موجود در یک دایرکتوری را بر اساس پارامترهایی که به آن می دهیم پیدا کنیم . برای مثال :
Myfile=Dir$("c:\text\*.txt)"x
دستور فوق نام اولین فایل موجود در دایرکتوری C:\TEXT را که پسوند آنها txt باشد در متغیر Myfile قرار می دهد . اگر دستور فوق را بدون پارامتر مجدداً اجرا کنیم نام دومین فایل برگرداننده می شد و الی آخر
Dir دارای یک پارامتر اختیاری است که نوع فایلهای مورد نظر را نیز می توان با آن مشخص نمود . مثال :
Myfile=Dir$("c:\text\*.txt",vbNormal)x
مقادیر ممکن این پارامتر عبارتند از :
vbNormal ، vbHidden ، vbSystem ، vbDirectory
۲ - تغییر دایرکتوری : برای تغییر دایرکتوری از دستور ChDir استفاده می شود مثال :
ChDir "c:\windows\system32"x
۳ - تغییر درایو : برای تغییر درایو از دستور ChDrive استفاده می شود مثال :
ChDrive "E:"x
۴ - ساخت دایرکتوری : برای ایجاد دایرکتوری جدید از دستور MKDir استفاده می شود مثال :
MKDir "c:\MyFolder"x
۵ - حذف دایرکتوری : برای حذف دایرکتوری از دستور RmDir استفاده می شود مثال :
RmDir "C:\MyFoler"x