• 0
أبو أحمد الحلبي

مشكلة في الكتابة إلى ملف باستخدام بيرل

سؤال

السلام عليكم

إخواني أنا عندي ملفين : ملف بيرل اسمه Open.pl و ملف آخر اسمه names.txt

من المفترض أن يقوم الملف Open.pl بالكتابة إلى ملف names.txt و لكنه لا يكتب . مع العلم أني أعطيت التصريح 777 للملفين (علما أني أستخدم نظام الباك تراك 5 )

و هذا هو كود ملف Open.pl :

#!/usr/bin/perlprint "Opening names.txt ..\n";open NAMES,"names.txt" or die "Error : Can't open names.txt";print "names.txt has been opened successfully !\n";print "Do you want to insert a name into names.txt file (Y\\N) ?\n";$Answer = <>;chomp ($Answer);if ($Answer eq "Y") {print "Type the name that you want to insert :\n";$Answer2 = <>;chomp($Answer2);print NAMES "$Answer2\n" or die "Can't write into the file !";}else {print "ok:(\n";}print "Closing names.txt ..\n";close NAMES or die "Error : Can't close names.txt";print "names.txt has been closed successfully !\n";exit;

و هذا هو محتوى ملف names.txt :

NajeebNabeelAmr

أرجو المساعدة إخواني

و شكرا لكم مسبقا

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

2 إجابة على هذا السؤال .

  • 0

تم حل المشكلة إخواني

الكود بعد التعديل :

#!/usr/bin/perluse strict;use warnings;print "Opening names.txt ..\n";open NAMES,">>names.txt" or die "Error : Can't open names.txt";print "names.txt has been opened successfully !\n";print "Do you want to insert a name into names.txt file (Y\\N) ?\n";my $Answer = <>;chomp ($Answer);if ($Answer eq "Y") {print "Type the name that you want to insert :\n";my $Answer2 = <>;chomp($Answer2);print NAMES "$Answer2\n" or die "Can't write into the file !";}else {print "ok:(\n";}print "Closing names.txt ..\n";close NAMES or die "Error : Can't close names.txt";print "names.txt has been closed successfully !\n";exit;

طريقة الحل هي إضافة هذه العلامة << قبل اسم الملف
 :)

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

المعامل >> تعني فتح الملف في مود الإضافة على محتوى الملف

المعامل > تعني فتح الملف في مود الكتابة (وتصفير الملف)

بدون أي معامل يفتح الملف في مود القراءة فقط

1

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

  • يستعرض القسم حالياً   0 members

    لا يوجد أعضاء مسجلين يشاهدون هذه الصفحة .