کار با فایل ها

کار با فایل ها
curdir دستور تغیر نام پوشه
curdir دستور تغیر نام پوشه
chdir دستور تغیر فهرست جاری
chdrive دستور تغیر درایو جاری
mddir دستور ایجاد پوشه
e:\ در درایو class مثال ساخت پوشه
Chdrive("e:")
Chdir("\")
Mddir("class")
rmdir دستور حذف پوشه خالی

kill دستور حذف فایل
c:/dos/os2.txt مثال :حذف فایل
Kill("c:\dos\os2.txt")
dir دستور جستجوی فایل
جستجو شده و پیغام با جستجو به نمایش در می آید: readme.txt مثال:در برنامه زیر فایل
A=dir(readme.txt)
If a=" " then
Msgbox("no find file")
Else
Msgbox("find file")
End if
روی کاغذ می شود: txt باعث چاپ فایل های با پسوند command مثال در برنامه زیر فشردن 1
: command1_click در رویداد
a=dir("*.txt")
do while a<>""
printer.print a
a=dir()
loop
printer.enddoc


روش دستیابی به فایل ها

روش دستیابی به فایل ها :
1: دسترسی ترتیبی 2: دستیابی تصادفی 3: دسترسی دودویی
*دسترسی ترتیبی :در این روش اطلاعات در فایل به صورت سطر به سطر خوانده یا نوشته می شوند
و برای دستیابی به یک سطر خاص لازم است تا از اطلاعات قبل آن عبور کرده به اطلاعات مورد نظر
برسیم .خواندن و نوشتن اطلاعات در این روش ممکن نیست
مثال : فایل های متنی
*دستیابی تصادفی : در این روش اطلاعات به صورت رکورد به رکورد خوانده و نوشته می شوند.
و با دانستن شماره هر رکورد میتوان مستقیما به اطلاعات آن رکورد دسترسی پیدا کرد
خواندن و نوشتن همزمان رکوردها امکان پذیر است .مثال فایل های پایگاه داده
*دسترسی دودویی : در این روش اطلاعات به صورت بایت به بایت خوانده یا نوشته می شوند
برای دستیابی به یک بایت دانستن شماره آن بایت کافی است به طور همزمان می توان عملیات
خواندن و نوشتن را روی اطلاعات انجام داد
مثال فایل های صوتی و تصویری.
دستور باز کردن فایل :قبل از استفاده از یک فایل ابتدا باید با دستور زیر آن را باز کرد:
open نام و مسیر فایل For عملیات مورد نظر As شماره فایل

عملیات مورد نظر می تواند یکی از موارد زیر باشد :

41
باز کردن فایل به صورت ترتیبی برای خواندن اطلاعات آن. : Input
باز کردن فایل به صورت ترتیبی برای نوشتن اطلاعات در آن در صورتی که فایل از : Output
قبل موجود باشداطلاعات قبلی آن پاک می شوند .
باز کردن فایل به صورت ترتیبی برای اضافه کردن اطلاعات به انتهای آن. : Append
باز کردن فایل به صورت تصادفی برای نوشتن و خواندن اطلاعات. : Random
باز کردن فایل به صورت دودویی برای نوشتن و خواندن اطلاعات آن .شماره فایل باید : Binary
عددی غیر تکراری باشد مثال:
Open"c:\persian.txt" forinput as 3
Open"e:\vb.dat" for random as 5
را برای خواندن اطلاعات آن به صورت ترتیبی باز کرده و c:\persian.txt دستورات فوق فایل
شماره 3 را به آن اختصاص می دهد.
را به صورت تصادفی برای نوشتن و خواندن رکورد های آن باز کرده و e:\vb.dat دستور دوم فایل
شماره 5 را به آن اختصاص می دهد.
تابع یافتن شماره غیر تکراری برای فایل:
نام فایل =freefile( )
مثال:
A=freefile()

Open"Persian.txt"for append as a

42
Cloce# دستور بستن فایل :در پایان کار با یک فایل آن را با دستور زیر می بندیم . شماره فایل
دستور نوشتن در فایل ترتیبی :
Print# اطلاعات مورد نظر , شمار فایل
باعث ایجاد فایلی به نام command مثال 1: در برنامه زیر عبارت فشردن کلید 1
را درون آن می نویسد: iran شده و 10 بار عبارت d: در درایو persian.txt
command1_click : در رویداد
Open"d:\persian.txt"for output as 9
For i=1 to 10
print#9,"iran"
Next
Close#8
با آن text نام فایلی درخواست شده و اطلاعات درون 1 save مثال 2:در برنامه زیر فشردن کلید
نام ذخیره می شود:
قرار می دهیم. true را برابر با text برای 1 multiline اول خاصیت
: command1_click در رویداد
Commondialog1.showsave
Open commondialog1.filename+".txt"for output as 6
Print#6,text1.text
Close#6

43
(eof ) تابع تشخیص انتهای فایل شماره فایل
می شود. true در صورتی که به انتهای فایل رسیده باشیم تابع و مقدار فوق
درون d:\persian.txt محتویات فایل command مثال :در برنامه زیر با فشردن کلید 1
نمایش داده می شود: text1
قرار می دهیم true را برابر با text برای 1 multiline اول خاصیت
command1_click در رویداد
open"d:\persian.txt" for input as 8
do until eof(8)
input#8,a$
text1.text=text1.text+a$
loop
close
دستور نوشتن در فایل تصادفی :
put# مقدار مورد نظر,شماره رکورد و بایت,شماره فایل
دستورخواندن در فایل تصادفی :
get# متغیر,شماره رکورد و بایت,شماره فایل

44
کپی file فایل یاد دشه به 2 command و فشردن 1 file مثال :در برنامه زیر پس از انتخاب در
می شود:
: drive1_change در رویداد
Drive1.path=dir1.path
: dir1_change در رویداد
File1.path=dir1.path
: drive2_change در رویداد
Dir1.path=drive2.drive
: Dir2_change در رویداد
File2.path=dir2.path
همان دکمه کپی ): ) command1_click در رویداد
Open file1.path+"\"+file1.filename for binary as 1
Open file2.path+"\"+file1.filename for binary as 2
I=0
Form2.show
Form2.label1.caption="copy file"+file1.filename
Do until eof(1)
Get#1,I,a$
Put#2,I,a$
I=i+1

Loop
Form2.hide
close
در مثال بالا فرم 2 نشانه صبر و نشان دادن فایل های که دارند کپی می شود.