Delphi - Leer la cantidad de palabrs de un txt

 
Vista:

Leer la cantidad de palabrs de un txt

Publicado por Cesar (5 intervenciones) el 07/04/2005 21:20:01
Buenas tardes, mi problema es el siguiente, tengo una ventana que lee un archivo de texto en un tmemo, lo que quiero hacer es que esa ventana de alguna manera lea la cantidad de palabras de ese txt y si la cantidad aumento, que me lo indique en un tlabel.
gracias de antemano
Cesar Montero
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Leer la cantidad de palabrs de un txt

Publicado por Elena (330 intervenciones) el 07/04/2005 22:24:06
¿La cantidad de palabras o de letras?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Leer la cantidad de palabrs de un txt

Publicado por Dr Juzam (821 intervenciones) el 07/04/2005 23:56:23
A ver si este código te sirve de ayuda:

http://www.swissdelphicenter.ch/torry/showcode.php?id=806

Suerte.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Leer la cantidad de palabrs de un txt

Publicado por Cesar (10 intervenciones) el 11/04/2005 17:34:33
Buenos dias de nuevo...
Juzam, implemente este código que encontre en la página que me indicaste ( por cierto excelete página ) pero me indica solamente el numero 1...
te pongo el código:

procedure TFormTexto.Timer1Timer(Sender: TObject);

function Palabras(SizeText:string):integer;
var
n:integer;
AntEspacio:boolean;
begin
AntEspacio := FALSE;
If SizeText = '' then Result := 0 else Result := 1;
for n:=1 to Length(SizeText) do
begin
if AntEspacio and
(SizeText[n]<>' ')and
(SizeText[n]<>#13)and
(SizeText[n]<>#10) then Inc(Result);

AntEspacio:=(SizeText[n]=' ') or
(SizeText[n]=#13) or
(SizeText[n]=#10);
end;

end;

begin
Contador.caption:=IntToStr(Palabras(Ruta.Text));
Cont := IntToStr(Palabras(Memo1.Text));
end;

{
Ruta.Text es un TEdit de donde jalo el archivo que quiero leer (ruta completa).
Pero en Contador.Caption solo aparece el 1
La idea es que muestre el numero de palabras del archivo para compararlo
despues con el valor almacenado en cont.
}

Gracias nuevamente y espero me puedas ayudar.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Leer la cantidad de palabrs de un txt

Publicado por Dr Juzam (821 intervenciones) el 11/04/2005 18:46:21
A mi me funciona correctamente. Puse el código así:

{Abro el archivo y cuento sus palabras}
procedure TForm1.Button1Click(Sender: TObject);
begin
if OpenDialog1.Execute then begin
Memo1.Lines.LoadFromFile(OpenDialog1.FileName);
Label1.Caption:=IntToStr( WordCount (Memo1.Text));
end;
end;

{Separadores de palabras}
function TForm1.Seps(As_Arg: Char): Boolean;
begin
Seps := As_Arg in
[#0..#$1F, ' ', '.', ',', '?', ':', ';', '(', ')', '/', '\'];
end;

{Función de contar palabras}
function TForm1.WordCount(CText: string): Longint;
var
Ix: Word;
Work_Count: Longint;
begin
Work_Count := 0;
Ix := 1;
while Ix <= Length(CText) do
begin
while (Ix <= Length(CText)) and (Seps(CText[Ix])) do
Inc(Ix);
if Ix <= Length(CText) then
begin
Inc(Work_Count);

while (Ix <= Length(CText)) and (not Seps(CText[Ix])) do
Inc(Ix);
end;
end;
Result := Work_Count;
end;

end.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Leer la cantidad de palabrs de un txt

Publicado por Cesar (10 intervenciones) el 18/04/2005 17:19:18
Perdon por la tardanza.... gracias Juzam..
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar