المشاركات : 37
المواضيع 13
:
: 0
الإنتساب : Jan 2009
[COLOR="Navy"][FONT="Comic Sans MS"]السلام عليكم
كيف أقدر أقرأ Textfile كلمة كلمة وكل كلمة تطبع في سطر
سمعت ان في (Procudure or method) تقدر تسوي هذا الشي أحد يفدر يساعدني
Note: I use Delphi version 2007
ـ تحباتي
NOna[/COLOR]
المشاركات : 378
المواضيع 44
:
: 6
الإنتساب : Feb 2008
السلام عليكم
على حسب ما فهمت.
PHP كود :
Function MotParMot(Str:String):String;
Const Cha = ' ';
var
I,y:Integer;
Mot:String;
Sl:TStringList;
begin
Y:=0; Result:='';
Trim(Str);
Str:=Str+Cha;
Sl:=TStringList.Create;
for I:= Y to length(Str)do
if Str[i]in[Cha] then
begin
Mot:=Copy(Str,Y+1,I-Y);
Sl.Add(Mot);
Y:=I;
end;
Result:=Sl.CommaText;
Sl.Free;
end;
PHP كود :
LST1.Items.CommaText:=MotParMot(Edt1.Text);
المشاركات : 32
المواضيع 3
:
: 0
الإنتساب : Dec 2008
الكود الذي وضعه الاخ hanipino صحيح لكن النص الذي يتم تحويله هو نص عادي String موجود في سطر واحد
يستحسن مراعات حتى النصوص متعددة الأسطر أكثر من سطر TstringList
المشاركات : 378
المواضيع 44
:
: 6
الإنتساب : Feb 2008
إقتباس :يستحسن مراعات حتى النصوص متعددة الأسطر أكثر من سطر TstringList
يعمل بشكل عادى مع النصوص متعددة الأسطر .
مثلا :
PHP كود :
Mmo1.Lines.LoadFromFile('C:\Mot.txt');
LST1.Items.CommaText:=MotParMot(Mmo1.Text);
باءضافة هذا الكود فى اعلى الدالة .. تتحسن نوعا ما المخرجات .
PHP كود :
for i:= 0 to length(Str) do
Str:=StringReplace(Str, ' ', ' ', [rfReplaceAll]);
المشاركات : 32
المواضيع 3
:
: 0
الإنتساب : Dec 2008
hanipino كتب :يعمل بشكل عادى مع النصوص متعددة الأسطر .
اخي العزيز هذا الكود لتجاهل الفراغين مع بعض و جعلها فراغا واحدا
لكن لنفترض أنه يوجد بين الكلمة و أخرى أكثر من فراغين إذن بقي المشكل قائم
و الحل لتعميم أكثر من فراغ هو كالتالي :
نضيف الكود التالي و هو
PHP كود :
if Mot <> '' then
Sl.Add(Mot);
بدلا من
المشاركات : 378
المواضيع 44
:
: 6
الإنتساب : Feb 2008
إقتباس :لكن لنفترض أنه يوجد بين الكلمة و أخرى أكثر من فراغين إذن بقي المشكل قائم
فراغين او 3 او 4 ... لا يوجد اى مشكل .
بسبب ان الكود موجود فى عدة حلقات و بالتالى يقضى على كل الفراغات .
اخى mourad39
لا اعتقد انك جربت الكود ب هذه الاضافة
PHP كود :
if Mot <> '' then
Sl.Add(Mot);
لان المخرجات كانت متدهورة .
المشاركات : 37
المواضيع 13
:
: 0
الإنتساب : Jan 2009
أخي hanipino
أنا مبتدئة في الدلفي
حاولي في هذا الكود لكن ما اشتغل معي أنا عملت الأتي
PHP كود :
if not OpenDialog1.Execute then Exit;
Memo1.Clear;
AssignFile(myfile,OpenDialog1.FileName);
Reset(MyFile);
while not Eof(MyFile) do
begin
Readln(MyFile,Text1);
.
.
.
.
end;
CloseFile(MyFile);
end;
المشاركات : 378
المواضيع 44
:
: 6
الإنتساب : Feb 2008
الله اعلم هذه هى
احسن طريقة .
PHP كود :
ExtractStrings([' '],
[' ',',','.'],
Pchar(Memo1.Text),
Memo2.Lines);
![[صورة: sanstitreof4.jpg]](http://img216.imageshack.us/img216/1876/sanstitreof4.jpg)
دالة طايبة
أخي الكريم لقد حاولت تتطبيق هذا المثال ولكن لم اعرف اوزع الكود في مكانه
لكم جزيل الشكر
المشاركات : 378
المواضيع 44
:
: 6
الإنتساب : Feb 2008
وجود 2 ميموا و زر .
فى حدث الضغط على زر . اكتب الكود اعلاه .