الملفات النصيه عباره عن ملفات تحتوي على اسطر من النصوص . متى اردت الوصول إلى ملف في باسكال يجب عليك ان تنشئ متغير ملف اولاً
شيفره برمجيه :
program Files;
var
f: Text;
begin
end.
بعد الاعلان عن المتغير يجب ان تسند اسم الملف للمتغير :
شيفره برمجيه :
program Files;
var
f: Text;
begin
Assign(f,'MyFile.txt');
end.
لإنشاء ملف جديد فارغ استخدم الامر Rewrite . هذا الامر ينشئ اي ملف غير موجود .
شيفره برمجيه :
program Files;
var
f: Text;
begin
Assign(f,'MyFile.txt');
Rewrite(f);
end
الامرين Write و Writeln يعملون على الملفات على طريقه واحده على الشاشه بإستثناء البارامتر الاضافي الذي يخبرهم للكتابه في الملفات :
شيفره برمجيه :
program Files;
var
f: Text;
begin
Assign(f,'MyFile.txt');
Rewrite(f);
Writeln(f,'A line of text');
end.
اذا كنت تريد قرائه محتويات ملف موجود سابقاً اولاً يجب ان تستخدم الامر Reset بدلاً من Rewrite . ثانيا استخدم الامر Readln لقرائه السطور من الملف . سوف تحتاج إلى التكرار while لقرائه جميع السطور .
شيفره برمجيه :
program Files;
var
f: Text;
s: String;
begin
Assign(f,'MyFile.txt');
Reset(f);
while not eof(f) do
Readln(f,s);
end.
الامر Append يفتح الملف و يسمح لك ان تكتب المزيد من النصوص في آخر الملف .
شيفره برمجيه :
program Files;
var
f: Text;
s: String;
begin
Assign(f,'MyFile.txt');
Append(f);
Writeln('Some more text');
end.
يجب عليك اغلاق الملف بعد الانتهاء من استخدامه . اذا لم تغلقه قد تخسر بعض النصوص التي قمت بكتابتها فيه .
شيفره برمجيه :
program Files;
var
f: Text;
s: String;
begin
Assign(f,'MyFile.txt');
Append(f);
Writeln('Some more text');
Close(f);
end.
يمكنك تغير اسم ملف مع الامر Rename و حذف الملفات مع الامر Erase
شيفره برمجيه :
var
f: Text;
begin
Assign(f,'MyFile.txt');
Rename(f,'YourFile.txt');
Erase(f);
Close(f);
end.
للبحث عن الملف اذا كان موجود ام لا , يجب اولاً ان تتبع ذلك بإستخدام {$I-} . بعد ذلك يجب ان تقوم بإستخدام الامر Reset على الملف بعدها استخدام الجمله الشرطيه if IOResult = 2 then و معناها اذا كان الملف غير موجود , و استخدام الشرط If IOResult = 0 و معناها اذا كان الملف موجود . و اذا كانت قيمة IOResult ليست 2 او 0 نستخدم الامر Halt لإنهاء البرنامج . الـ IOResult سوف يفقد قيمته اذا تم استخدامه لمره واحده لذلك يجب علينا ان نضعه في متغير قبل استخدامه . يجب عليك كذلك استخدام {$I+} لإعادة تتبع الاخطاء .
شيفره برمجيه :
program Files;
var
f: Text;
IOR: Integer;
begin
Assign(f,'MyFile.txt');
{$I-}
Reset(f);
{$I+}
IOR := IOResult;
if IOR = 2 then
Writeln('File not found');
else
if IOR <> 0 then
Halt;
Close(f);
en