السلام عليكم
طبعا التعامل مع الملفات من فتح ملف و الكتابه بداخله و القراءة منه وهذة الاشياء
تحتاج اليها فى برامجك مثلا ربط البرنامج بملف نصى , عمل برامج تحتاج الى كلمة سر واشياء اخرى كثيرا
سوف اقوم بشرح انواع الملفات وكيف يمكن استخدامها من خلال الفجول بيسك.
برمجة التعامل مع الملفات فى vb
يمكن فى vb التعامل مع 3 انواع من الملفات :
1-الملفات التسلسليه sequential تخزن البيانات فى الملف التسلسلى على شكل سلسلة نصية يفتح الملف التسلسلى اما للقراءة او للكتابة اى انه لايمكن القراءة و الكتابة بان واحد، كما يتم الوصول للبيانات بشكل متسلسل.
2-الملفات الثنائيه binary : يتم فى هذا النوع التعامل مع الملف بايت /بايت يفتح الملف للقراءة و الكتابة بنفس الوقت كما يمكن الوصول لاى بايت مباشرة عن طريق رقمها ترتيبها فى الملف .
3-الملفات ذات الوصول العشوائى random : يتالف الملف فى هذة الحالة من مجموعة من السجلات records يمكن فتح الملف للقراءة منه و المتابه فيه بان واحد تشبه بنيه الملف العشوائى بنيه الجدول table فى قاعدة بيانات database تعتبر الملفات العشوائيه من النادر اللجوء اليها مع توافر نظام ادارة قواعد البيانات مثل access و sqlserver .
اولا: برمجه التعليمات التعامل مع الملفات التسلسليه فى vb
1-تعليمة فتح ملف تسلسلى للكتابة فيه:
تاخذ التعليمة الشكل التالى ،وهى تقوم بانشاء الملف ان لم يكن موجودا اما اذا كان موجودا فهى تمسح جميع محتوياته ونبد الكتابة من اوله:
Open pathname for output as #filenumber
حيث:
Pathname هو مسار الملف
Filenumber هو رقم بين 1 و 511 نعطيه للملف عند فتحه و من ثم نتعامل مع الملف عن طريق هذا الرقم يمكن استخدام الدالة freefile لتوليد رقم مقبول للملف تلقائيا.
2-تعليمة فتح ملف تسلسلى للاضافه عليه :
تائخذ التعليمة الشكل التالى ، وهى تقوم بانشاء الملف ان لم يكن موجود ا اما اذا كان موجودا فهى تكتب فيه اعتبارا من نهايته:
Open pathname for append as #filenumber
3-تعليمة اغلاق ملف مفتوح :
close#filenumber
4-تعليمة الطباعة على ملف مفتوح بشكل output او append :
Print#filenumber,outputliste
حييث outputliste هى الكلام اللى انت عايز تكتبه على الملف
5-تعليمة فتح ملف للقراءة منه :
Open pathname for input as # filenumber
فى حال عدم وجود الملف سترجع التعليمة الخطاء التالى : file not found
لذا نقوم عادة باختبار وجود الملف قبل فتحه للقراءة باسخدام dir و التى نمرر لها مسار الملف كاملا فان كان الملف موجودا فانها تعيد اسمه مثلا
dim myfile
Myfile = dir("c:\1.txt)6-تعليمة قراءة سطر من ملف مفتوح بشكل input :
Line input # file number ,varname
تقوم هذة التعليمة بقراءة سطر من الملف ووضعه فى المتحول النصى varname
7-اختبار الوصول لنهاية الملف :
تعيد الدالة EOF القيمة TRUE اذا وصل مؤشر القراءة الى نهاية الملف والا فاها تعيد FALSE
EOF(FILENUMBER)
مثال:
المثال التالى نقوم بقراءة محتويات الملف TESTFILE سطرا سطرا و طباعتها فى النافذة المباشرة
DIM TEXTLINE OPEN "TEXTFILE" FOR INPUT AS #1 DO WHILE NOT EOF (1) LINE INPUT #1, TEXTLINE LOOP CLOSE #1
8-تعليمة القراءة من ملف:
تقوم التعليمة التالية بقراءة البيانات من الملف ووضعها فى متحولات:
INPUT#FILENUMBER,VARLIST
حيث VARLIST هى قائمة المتحولات التى ستستقبل قيمها من الملف
انفرض مثلا: ان لدينا ملفا تسلسليا TEXTFILEيحوى عدة اسطر كتبت باستخدام تعليمة PRINT كل سطر يتالف من نص ورقم . فى التعليمات التالية سنفتح الملف و ندور على بياناته حتى الوصول لنهايته
Dim mystring , mynumber Open "textfile" for input as #1 Do while not eof (1) Input #1 ,mystring,mynumber Loop Close #1
ده كان شرح الملفات التسلسلية انا هجهز شرح النوع الثانى binary
مع اعطاء مثال عام:
اى استفسار انا فى الخدمة ........