Gadgets, Celulares, Telefonia, Electronic Music y mucho más…

Delphi: Contar Lí­neas, palabras y letras desde un Archivo de Texto

El ejercicio es muy sencillo, consistirá en hacer un pequeño programa que sea capaz de cargar un archivo de texto y decirnos cuantas lí­neas tiene, cuantas palabras hay en el texto y el número de letras que hay en el texto.

Necesitarás utilizar Borland Turbo Delphi 6 para seguir este ejemplo y compilar el proyecto. Y además tener ciertos conocimientos sobre algunos componentes y el lenguaje de programación, ya que no entraremos en detalle del uso de estos; sin embargo es muy intuitivo y no creo que sea muy difí­cil entenderlo.

Lo primero que haremos es dibujar la interfaz (la parte divertida) usaremos unos labels, tres cuadros de edición (TEdit), una barra de menú (TMainMenu), un OpenDialog y un cuadro de edición del tipo Memo (TMemo). Como la siguiente (La interfaz es al gusto del cliente):


Interfaz Delphi

Los nombres que dice en la imagen son los nombres de los componentes, corresponden a la propiedad NAME.

Ya que tenemos la interfaz, utilizaremos el evento Clic sobre el item "Abrir" de nuestro menú, (El menú que utilice tiene 2 opciones "Abrir y Cerrar"), para ello en modo de diseño daremos doble clic sobre el item y eso nos creará el código para evento y es aquí­ donde deberemos realizar todo el proceso para la obtención de los datos que nos solicita el problema.

El código importante es este:

DELPHI:
  1. //Estamos en el evento CLICK del Ite Abrir.
  2. procedure TForm1.Abrir1Click(Sender: TObject);
  3.   var I: Integer;
  4.   var Texto:String;
  5.   var c:Integer;
  6.  
  7. begin
  8. c:=1;
  9.  
  10. //Se abre el componente para poder buscar el archivo de texto.
  11. if OpenDialog1.Execute then
  12.  
  13. //Cargamos el archivo en el Tmemo. Filename nos da la
  14. //ubicación del archivo.
  15.   tm_Contenido.Lines.LoadFromFile(OpenDialog1.FileName);
  16.  
  17. //Extraemos el número de lineas que se cargaron.
  18. //La propiedad TMemo.Lines.Count, nos dice el número de
  19. //lí­neas que tiene el componente.
  20.   te_noLineas.Text:=IntToStr (tm_Contenido.Lines.Count);
  21.   Texto:=tm_Contenido.Text;
  22.  
  23. //Reemplazamos #13 (Retorno de Carro) y #10 (Final de Lí­nea);
  24. //con un espacio en blanco
  25.   Texto:=StringReplace(Texto,#13#10,' ',[rfReplaceAll]);
  26.  
  27. //Este for busca cuantos espacios en blanco hay, suponemos
  28. //que entre cada espacio en blanco hay una palabra.
  29.   for I := 1 to Length(Texto) do
  30.     if pos(Texto[I],' ')>0 then
  31.       c:=c+1;
  32.   te_noPalabras.text:=IntToStr(c);
  33.  
  34. //Eliminamos los espacios en blanco. Al no poner caracter de
  35. //reemplazo lo elimina. Así­ obtenemos de todo el texto una
  36. //sola cadena sin espacios y nos aprovechamos de la función
  37. //Length para obtener el número de letras en la cadena.
  38.   Texto:= StringReplace(Texto,' ','',[rfReplaceAll]);
  39.   te_noLetras.Text:=IntToStr(Length(Texto));
  40. end;


Interfaz Delphi

Y pues como verán es muy sencillo hacerlo, bueno la verdad es que para algunos (como yo) que estamos muy acostumbrados a otros lenguajes de programación es un poco complicado adaptarse a Delphi, sobre todo cuando tenemos ciertas cosas en la cabeza que ya pensamos como estándares, como la estructura del FOR o el WHILE; es cuestión de acostumbrarse.

Poco a poco iré poniendo detalles, la verdad es que apenas empiezo a programar en este lenguaje y estoy aprendiendo los trucos.

Solo me resta decir de Novato a Novato -Aprender es cuestión de decidirse: estudia, investiga, pregunta, no te lo fusiles nada más; sino aprendes de nada vale-

Página de Referencia:

http://www.delphibasics.co.uk/ - Muy completa acerca del lenguaje (en Ingles).

Archivos del Proyecto

Archivos Fuente y Ejecutable del proyecto

¿Te ha gustado este artículo? Subscribete vía Email, para ¡recibirlos en tu correo!

¿No encontró lo que buscaba? ¡Use el buscador!

 
Escrito para el 26 de July de 2007
RSS 2.0 Trackback

3 Comentarios este tema es Hot

  1. Hilario Dijo:

    Hola Que tal leei tu articulo esta muy practico ademas bastante expresivo con tus comentarios. La verdad soy nuevo en este lenguaje pero lo tengo que aprender ya que en la escuela se necesita y la escuela no lo enseña, espero ver mas de tus ejemplos; muchas veces las ideas uno las tiene pero de no saber como se escriben o como se estructuran te puedes pasar medio dia en eso y nunca veras la solucion sino hasta que te des cuenta que solo hacia falta una coma, un apostrofe, un punto y coma, jejeje

    Bueno nos vemos y gracias por tu ejemplo, yo buscaba como contar los caracteres de un Edit y viendo el ejemplo de arriba me di cuenta como podia implementarlo y me salio.

    Gracias, nos vemos luego

    Veracruz, Mexico 9 enero 2008



    Escrito el 9 de January de 2008 a las 13:45
    Usando Internet Explorer Internet Explorer 7.0 en Windows Windows XP
  2. juan Dijo:

    hola mira una pregunta de un aprendis la funcion length para contar la letras que utilizas no cuanta los caracteres de la palabra como haces para descriminar (*.,+-,etc) del texto o sea que cuantes la letras a..z no mas



    Escrito el 27 de August de 2008 a las 20:13
    Usando Internet Explorer Internet Explorer 6.0 en Windows Windows XP
  3. laura Dijo:

    nececito informacion de delphi



    Escrito el 8 de October de 2008 a las 13:15
    Usando Mozilla Firefox Mozilla Firefox 2.0.0.17 en Windows Windows XP

Deja un Comentario

Hey tu! usar emoticones te hace más cool!
                                         

Comparar precios y encontrar el mejor Telefono movil con twenga !
Descarga Musica, Videos, mp3 y mucho más Tutoriales de Fireworks en Español Guirichop Bucaneros de Campeche, Baloncesto Profesional Aeromental We Love Geeks! Licencia Creativa

Escriba su e-mail:

Reciba en su correo electrónico lo más reciente
en DaHouseCats Blog

Comentarios

Suscríbete

  •  
  • Add to Twitter
  • Add to Google Reader or Homepage
  • Add to Technorati Favorites

Disclaimer:

  • DaHouseCat, no se hace responsable acerca del mal uso que se le dé a la información contenida en los artículos y / o tutoriales, quedando en absoluta responsabilidad del usuario.

Administración

  • DaHouseCat
    Posts: 499 - 100%
    Comentarios: 4666 - 100%
    Pingbacks: 96 - 100%
    Score: 10119
499 posts, generados por 1 autores.

Buscar

 

M. Instántanea

B. de Blogueros

DaHouseCat en:

Blogs Amigos

Blogs Campeche

Webs Amigas

Categorías




Archivo

Recomendados

Este blog utiliza Worpress y fue diseñado por DaHouseCat - 2007
El contenido y algunas imagenes de DaHouseCat's Blog estan bajo la licencia de
Reconocimiento-NoComercial-SinObraDerivada 2.5