الموضوع الثاني : الحفظ والقرائة من الملفات txt
في الالعاب الحقيقية - على سبيل المثال ألعاب RPG نجد HP و MP وموقع اللاعب والItem والمرحلة و....و..... * تحتاج إلى تحفظ في ملف حتى إذا لعب اللاعب اللعبة سيكمل إلى ما إنتهى إليه ..أي بإختصار save و load .
* أولا : عملية save :
نعمل ذلك من خلال كود "قصير" لذلك سأجعله دفعة واحدة :
التطبيق 4-3 :
كود:
Open App.Path & "\game.txt" For Output As #1
Print #1, "HP = 200 " ' the first line
Print #1, "MP = 60 " ' the second line
Close #1
open : هذا الامر يقوم بفتح الملف - اي تجهيزه ( سواءاً للحفظ او القرائة )
app.path : هذا الكائن يحدد موقع البرنامج
game.txt : هو إسم الملف
app.path & game.txt : أي أننا نريد أن ننشأ الملف بإسم game ويقع في نفس المجلد الذي يقع فيه البرنامج
for output : أي للحفظ ( فنحن الان جهزنا الملف للحفظ )
1# : أي رقم هذا الملف هو 1 .... تخيل أننا جهزنا 3 ملفات للحفظ ..فكيف نحدد الملف نريد الكتابة فيه ... وذلك من خلال الرقم
لماذا # ؟ الله اعلم
.
________________________
"Print #1, " hp = 200 :أي نكتب في السطر الاول من الملف والذي رقمه 1# - ثم نظع فاصلة - ثم نكتب ما نريد(hp = 200)
"Print #1, " Mp= 60 :أي نكتب في السطر الثاني من الملف والذي رقمه 1# - ثم نظع فاصلة - ثم نكتب ما نريد( MP = 60 )
________________________
close #1 : أي أقفل الملف رقم 1# وذلك لتحرير الذاكرة .
هذا بالنسبة للحفظ - أما للقرائة من الملف
كود:
Dim a As String, b As String
Open App.Path & "\game.txt" For Input As #1
Line Input #1, a
Line Input #1, b
Close #1
MsgBox a & b
نلاحظ أن التعديلات بسيطة فقط عرفنا المتغيرين a و b لكي يخزنا القيم المأخوذة من الملف .
for Input : للقرائة
line input #1 , a : إقرأ من الملف رقم 1# السطر الاول وخزن ذلك في المتغير a
Line Input #1, b : إقرا من الملف رقم 1# السطر الثاني وخزن ذلك في المتغير b
سأرفق ملف لهذا التطبيق بالإضافة الى عمل ساعة بأبسط حالاتها
تحياتي