![]() |
|
تقسيم النص - نسخة قابلة للطباعة +- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum) +-- قسم : منتديات دلفي للعرب التعليمية (https://delphi4arab.net/forum/forumdisplay.php?fid=3) +--- قسم : سؤال و جواب حول دلفي (https://delphi4arab.net/forum/forumdisplay.php?fid=15) +--- الموضوع : تقسيم النص (/showthread.php?tid=5481) الصفحات:
1
2
|
تقسيم النص - maryos - 23-08-2013 السلام عليكم كيف اقسم ملف مثلا عندي ملف تكست به اكثر من 255 حرف افتحه عن طريق dlgOpen ثم يقسم الاحرف ليقبلها دلفي مثلاا ;'11111' ;'22222' ;'33333' وثم عن طريق dlgSave يحفظ الملف اكملت كلشيء تقريبا وبقى تقسيم النص ارفقت مشروع تقسيم النص - Agmcz - 24-08-2013 وعليكم السلام السؤال غير واضح :confused: تقسيم النص - maryos - 24-08-2013 عندي ملف بامتداد .txt ومكتوب فيه كلمات واسطر كثيره مثلااا كود : hello this is delphi for arab
enjoy your day here
delphi for arab is the best websiteالان بدي اقسمهم كل سطر يحتوي على 20 حرف فقط واذا يوجد اكثر من 20 يحول باقي الاحرف الى السطر الثاني الى ان تنتهي كل احرف التيكست وثم يحفظ العمل بصيغه تيكست يعني يصير هكذا كود : ;'hello this is delphi'
;' for arab enjoy yo'
;'ur day here delph'
;'i for arab is the b'
;'est website'تقسيم النص - SMP3 - 24-08-2013 و عليكم السلام حل على السريع : PHP كود : procedure Split20(AMemo: TMemo);PHP كود : Split20(mmo1); تقسيم النص - maryos - 24-08-2013 Smp3 شكرااا لك يعمل لاكن يوجد مشكله يعمل جيدا حتى يصل الى السطر رقم 12 اعتقد وثم ينسخ باقي النص فقط اي يبقى كما هوه راح احاول احلها شكراا لك تقسيم النص - S.FATEH - 24-08-2013 السلام عليكم يمكنك استخدام TStringList مع خاصية Delimiter حيث تضع فيها المحدد الذي يفصل بين النصوص و تضع في خاصية DelimitedText النص المراد اجراء العملية عليه ثم تقوم بتحميل النص الى stringlist يتم التقسيم بطريقة الية ابحث في المنتدى هناك الكثير مما اثير حول الموضوع مثال : PHP كود : procedure TForm1.Button1Click(Sender: TObject);PHP كود : procedure TForm1.SplitText(AMemo: TMemo; Delimiter: Char);تقسيم النص - SMP3 - 24-08-2013 هذه طريقة أخرى : PHP كود : // By SMP3PHP كود : Memo2.Text := SplitStr(self.Memo1.Text, 20); تقسيم النص - SMP3 - 24-08-2013 أه لقد نسيت .. ضع شرط للتحقق if Len < n then كود : function SplitStr(const AStr: String; n: integer): string;
var
s, PropStr: PChar;
Len, MemLen, i, D: integer;
c: char;
MemTxt, FTxt, TmpStr: string;
begin
D := 0;
MemTxt := AStr;
Len := Length(MemTxt);
[COLOR="Red"] if Len < n then
Result := AStr;[/COLOR]
.....
.....
.....تقسيم النص - SMP3 - 24-08-2013 تحديث للدالة لتفادي Memory Leaks : PHP كود : // By SMP3تقسيم النص - maryos - 24-08-2013 شكرااا تم الحل |