delphi4arab منتديات دلفي للعرب
الكتابة في ملف نصيBloc Not دون استخدام memo ؟؟ - نسخة قابلة للطباعة

+- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum)
+-- قسم : منتديات دلفي للعرب التعليمية (https://delphi4arab.net/forum/forumdisplay.php?fid=3)
+--- قسم : سؤال و جواب حول دلفي (https://delphi4arab.net/forum/forumdisplay.php?fid=15)
+--- الموضوع : الكتابة في ملف نصيBloc Not دون استخدام memo ؟؟ (/showthread.php?tid=5788)



الكتابة في ملف نصيBloc Not دون استخدام memo ؟؟ - bassem_43 - 13-12-2013

السلام عليكم
قمت بالبحث المتقدم في المنتدى لكن وجدت اغلب الشروحات يستعمل فيها memo لحفظ في ملف نصي
لدي مشروع فيه عدة edittext و زر واحد ،ما هو كود الضغط على الزر يقوم بانشاء ملف نصي اي Bloc not ويقوم بفتحه و بكتابة القيم المدخلة الى edittext في هدا الملف النصي مع بعض الكتابة حسب المثال التالي :

كود :
<newcamd-connector name="CSP5" profile="Edit5" enabled="true" metric="Edit6"> <host>Edit1</host><port>Edit2</port><user>Edit3</user><password>Edit4</password> <asynchronous>true</asynchronous> </newcamd-connector>

فقط تتغير قيم كل editText من خلال البرنامج والبقية جعلها تتولد اتوماتيكيا اي لا تتغير
وهده الصورة للتوصيح اكثر :
كود :
http://www.shy22.com/upfilpng/enf65747.png



الكتابة في ملف نصيBloc Not دون استخدام memo ؟؟ - Mr.DOS - 14-12-2013

سلام عليكم

شاهد المرفق


الكتابة في ملف نصيBloc Not دون استخدام memo ؟؟ - bassem_43 - 14-12-2013

Mr.DOS كتب :سلام عليكم

شاهد المرفق

وعليكم السلام ورحمة الله وبركاته
جزاك الله خيرا يا اخي لكن ما هي طريقة الحفظ في ملف نصي يعني Bloc not لمشاهدته و للتعديل عليه عند الحاجة
لان طريقة حفظك اظنها في ملفات stream ؟؟


الكتابة في ملف نصيBloc Not دون استخدام memo ؟؟ - Houdini - 14-12-2013

يا اخي انشا متغير من نوع tstringstream و كتب فيه ما تشاء من خزعبلات ^^ برمجياا و حفظه كاي stream


الكتابة في ملف نصيBloc Not دون استخدام memo ؟؟ - الياس الدويرة - 14-12-2013

باالنسبة للملفات الكبيرة الحجم لا يمكن رفعها على memo هذا منطقي
والاحسن استعمال stream كما قال الاخوة .


الكتابة في ملف نصيBloc Not دون استخدام memo ؟؟ - bassem_43 - 14-12-2013

الياس الدويرة كتب :باالنسبة للملفات الكبيرة الحجم لا يمكن رفعها على memo هذا منطقي
والاحسن استعمال stream كما قال الاخوة .

شكرا اخي الياس الدويرة و اخي Houdini لكن ما ****ه هو الحفظ في ملف نصي احتاج فقط حفظ الكود
الموضح في مشاركتي الاولى لا اظنه كبيرا حتى احفظه في ملف stream هل توجد طريقة اخرى لحفظه في ملف نصي في Bloc not ??


الكتابة في ملف نصيBloc Not دون استخدام memo ؟؟ - shagrouni - 15-12-2013

السلام عليكم

ربما هذا الكود أبسط:

PHP كود :
var
  
strList: TStringList;
begin
  strList 
:= TStringList.Create;
  try

   
strList.Add('<newcamd-connector' +
              
'name="CSP5"' +
                 
'profile=' + '"' + Edit5.Text + '"' +
           
'enabled="true"' +
                  
'metric=' + '"' + Edit6 + '"' + '>');

   
strList.Add('<host>'     + '"' + Edit1.Text + '"' + '</host>');
   
strList.Add('<port>'     + '"' + Edit2.Text + '"' + '</port>');
   
strList.Add('<user>'     + '"' + Edit3.Text + '"' + '</user>');
   
strList.Add('<password>' + '"' + Edit4.Text + '"' + '</password>');

   
strList.Add('<asynchronous>true</asynchronous>');
   
strList.Add('</newcamd-connector>');

   
strList.SaveToFile('MyFile.txt', TEncoding.UTF8);

  finally
    
strList.Free;
  
end; 



الكتابة في ملف نصيBloc Not دون استخدام memo ؟؟ - S.FATEH - 15-12-2013

السلام عليكم

اخي انت تتعامل مع Stream عند تعاملك مع مكون memo الخاصية Lines هي من النوع TStrings و النمط TStringList مورث منه ! استخدام TStringList جيد جدا للتعامل مع الملفات النصية الطريقة الاخرى انضر هنا
http://www.delphi4arab.net/forum/showthread.php?tid=7032


الكتابة في ملف نصيBloc Not دون استخدام memo ؟؟ - bassem_43 - 16-12-2013

shagrouni كتب :السلام عليكم

ربما هذا الكود أبسط:

PHP كود :
var
  
strlist: Tstringlist;
begin
  strlist 
:= tstringlist.create;
  try

   
strlist.add('<newcamd-connector' +
              
'name="csp5"' +
                 
'profile=' + '"' + edit5.text + '"' +
           
'enabled="true"' +
                  
'metric=' + '"' + edit6 + '"' + '>');

   
strlist.add('<host>'     + '"' + edit1.text + '"' + '</host>');
   
strlist.add('<port>'     + '"' + edit2.text + '"' + '</port>');
   
strlist.add('<user>'     + '"' + edit3.text + '"' + '</user>');
   
strlist.add('<password>' + '"' + edit4.text + '"' + '</password>');

   
strlist.add('<asynchronous>true</asynchronous>');
   
strlist.add('</newcamd-connector>');

   
strlist.savetofile('myfile.txt', tencoding.utf8);

  finally
    
strlist.free;
  
end; 
حل رائع شكرا لك


الكتابة في ملف نصيBloc Not دون استخدام memo ؟؟ - bassem_43 - 16-12-2013

S.FATEH كتب :السلام عليكم

اخي انت تتعامل مع Stream عند تعاملك مع مكون memo الخاصية Lines هي من النوع TStrings و النمط TStringList مورث منه ! استخدام TStringList جيد جدا للتعامل مع الملفات النصية الطريقة الاخرى انضر هنا
http://www.delphi4arab.net/forum/showthread.php?tid=7032

بارك الله فيك اخي فاتح افضل استعمال TStringList لاني اود ان ارى الملف بعد الكتابة فيه كما في المثال الدي اعطانيه الاخ shagrouni .
على العموم بارك الله فيكم جميعا