Pascal/Turbo Pascal - lectura de archivo CHAR o STRING

   
Vista:

lectura de archivo CHAR o STRING

Publicado por vanesa (3 intervenciones) el 16/11/2009 18:00:23
hola amigos, me llamo vanesa, estyo tratado de resolver un programita para mi curso de programacion, pero no lo puedo encontrar solucion

CAD : STRING
ARCHI: TEXT
CadChar: CHAR


el programa tiene que acer lo siguiente

* abrir un archivo d etipo texto ReadLn(Archi, cad);

* buscar todas las palabras que tengan la vocal "a" P := pos('A", cad); DETECTO LA A EN LA CADENA CAD

* y almacenarlas en otro archivo de texto tambien

bueno esto es facil, ya lo ice, pero me tope con el problema de que cuando las lineas del archivo son mayores a los 255 caracteres, no me lee toda esa linea, osea cargo los 255 primeros carateres en la variable CAD, y los restantes se cortan, por que la variable en la que almaceno lo declare como STRING

Bueno la solucions eria, declararlo de tipo CHAR ReadLn(Archi, CadChar); , que me cargue caracter por caracter, pero me parece que esto seria como perder algo de rapidez, por que el programa leeria caracter por carater

y lo que quiero es los mas eficaz y lo que todo buen programador lo aria, aunque todavia no llego a ser programadora, bueno pero algun dia lo sere.

y estaba pensando en como acer para que primero m lea todo la cadena que cargue de tipo STRING, De esta forma
*** ReadLn(Archi, cad);
*** P := pos('A", cad)
*** cad[p] := ' '; borro la vocal a, para que no me la lea de nuevo, y reinicio este ciclo para buscar la siguiente vocal "a"

y cuando llego al final de la cadena, osea llego a los 255 caracteres, suponiendo que ese renglon tienen unos 500 caracteres, a partir de la posicion 255 me empiece a leer caracter por caracter, osea deberia acer algo asi como:

read(archi, CadChar);
..
...
..

y asi voy leyendo todo el renglon, asta que salte del bucle """while not(eoln(archi)) do""" cuanod llega al final del renglon, entocnes volveria al principio, cargaria el siguiente renglon, me leeria los 255 caracteres, me extraeria todas las palabas con a, y si es mayor a 255 caracteres pasaria a este parte en que leeria caracter por caracter y me extraeria la palabra que tengan las a

bueno espero que me entiendan, quiero saber si se puede acer asi, que primero me cargue la cadena STRING y despues me vaya cargando CHAR caracter por caracter el resto de la linea o renglon del archivo

desde ya muchas gracias a todos los que me puedan responder, gracias amigos

vane
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:lectura de archivo CHAR o STRING

Publicado por BrunoBsso (10 intervenciones) el 22/11/2009 01:36:42
Hace mucho ke no programo estrictamente en pascal, pero se me ocurre ke en vez de usar el tipo STRING podrias usar WIDESTRING.
No me acuerdo si TP 7 lo incorpora, pero seguramente si.
Saludos!
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:lectura de archivo CHAR o STRING

Publicado por BrunoBsso (10 intervenciones) el 23/11/2009 11:36:59
Bueno, probe y en TP7 no existen los WideString. Es cosa de object pascal me parece.
Pero en fin, tu idea no esta tan mal. Lo ke si, cuando te topes con un renglon de mas de 255 en vez de leer char por char cuando se te saturo el string, me imagino ke podrias leer sobre el mismo string. O sea, reutilizarlo.
CREO ke podrias hacer algo asi:

VERIFICAR LA POSICION DONDE TE ENCONTRAS EN EL ARCHIVO;
Read(Archi,Cad); {si no lee un caracter de retorno de carro (enter) sigue en el mismo renglon}
SACAR LETRAS "A";
while (POSICION_VIEJA = POSICION_AHORA) do begin
{estas en el mismo renglon supuestamente}
Read(Archi,Cad);
SACAR LETRAS "A";
end;

Me imagino ke seria asi.
Disculpame si no te doy ciencia cierta, es ke hace mucho ke no uso Turbo Pascal.
Uso object pascal y muchas cosas son diferentes.

Saludos!!!!!!!!!

PD: espero ke respondas a ver si te sirvio o no..........
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:lectura de archivo CHAR o STRING

Publicado por VANE (3 intervenciones) el 26/11/2009 18:00:16
HOLA AMIGO, si me parece que me va a andar, aora vere, lo revisare ams afondo en casa para ver k saco de esto, y despues le respondere amigo para contarle como me fua

le doy gracias

muchas gracias y besitos
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