Pascal/Turbo Pascal - Cómo descubro el número de registros de un archivo

 
Vista:

Cómo descubro el número de registros de un archivo

Publicado por Julio (12 intervenciones) el 07/12/2002 03:31:46
Hola a todos.

Estoy haciendo una agenda en Turbo Pascal 7.0 y necesito saber el número total de registros. Existe alguna función que me devuelva el total de registros de la base de datos. Pense que "Size of" me podría servir, pero al parecer no es la función correcta o no sé cómo utilizarla.

También les agradecería si me pueden decir cómo puedo convertir un string de minúscula a mayúscula o viceversa. Lo necesito para poder comparar el nombre ingresado por teclado con el nombre guardado en el archivo, pero quiero que funcione con el teclado en mayúscula o minúscula y sin importar si los datos están guardado en mayúsculas o minúsculas.

Otra duda, cómo puedo comparar una variable string con una parte de otra variable string: por ejemplo: si escribo por teclado "Julio" cómo lo comparo para encontrar todos aquellos nombres que empiecen con "Julio" o "julio" o "JULIO".

Espero que entiendan mis preguntas y me ayuden por favor.

De antemano, muchas gracias.

Julio
[email protected]
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:Cómo descubro el número de registros de un arch

Publicado por Diego Romero (786 intervenciones) el 08/12/2002 01:28:49
Para calcular el número de registros haz lo siguiente:

CantRegs:=FileSize(F);

donde F es la variable que representa un archivo de registros.

Para convertir de minusculas a mayusculas:
function UpCases(S:String): String;
var
i:Integer;
begin
for i:=1 to Length(S) do S[i]:=UpCase(S[i]);
UpCases:=S;
end;
Esto solo afecta a los caracteres ASCII 97 hasta 122 inclusive, vale decir las vocales acentuadas no se convierten por efecto de UpCase()

Para buscar una subcadena que está dentro de otra cadena usa la función Pos():
Idx:=Pos('JUL','JULIO RODRIGUEZ');
Idx vale 1 pues la primera ocurrencia de la subcadena JUL empieza en la primer posición de la cadena JUILO RODRIGUEZ
Idx:=Pos('JUL','RODRIGUEZ JULIO');
Idx vale 11 pues JUL empieza en la posición 11 de la cadena.
Idx:=Pos('JUL','DIEGO ROMERO');
Idx vale cero ya que la subcadena JUL no está contenida dentro de la cadena DIEGO ROMERO.
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:Cómo descubro el número de registros de un arch

Publicado por Julio (12 intervenciones) el 08/12/2002 03:23:38
Hola Diego.

Antes de todo permíteme expresarte mis más sinceros agradecimientos. Cada día me sorprendes más la enorme disposición tuya de ayudar a tantas personas con dudas como yo.

Diego, creo que todas mis dudas se han despejado con ayuda, sólo que no sé si podré descubrir el total de registros del archivo, ya que use el código que te escribo a continuación y siempre me aparece el número 128, aunque tenga uno, dos, tres, siete, o cualquier otro número de registros.

Aquí está el codigo que usé en el programa a ver si me puedes aclarar algún error que pueda estar cometiendo.

Assign ( Fichero, 'D:\LENGUAJE\T-PASCAL\BIN\AGENDA.DAT' );
Reset (Fichero );
TotReg:= Ord (SizeOf (Fichero));

Al hacer un Write a Totreg siempre me aparece 128. La variable TotReg es de tipo Byte, pero también la declaré como Integer sin usar Ord, pero también aparece 128.

Esperando que entiendas mi duda y que no te canses de ayudarme, se despide muy agradecido de ti;

Julio
[email protected]
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:Cómo descubro el número de registros de un arch

Publicado por Julio (12 intervenciones) el 08/12/2002 05:27:26
Hola Diego y a todos los que vean este mensaje.

La verdad es que la ayuda brindada por ti Diego está correcta y solamente era yo el que estaba en un gran error. Estaba confundiendo FileSize con SizeOf. Perdón por mi error y, nuevamente, muchas gracias Diego.

Julio
[email protected]
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:Cómo descubro el número de registros de un arch

Publicado por Diego Romero (786 intervenciones) el 08/12/2002 16:59:19
Pues de nada, amigo, agradezco tus conceptos y me alegra que te haya sido útil mi ayuda.
Por un momento pensé que yo fuí quién habia competido el error jejeje.
De todas formas no dudes en preguntar todo lo que quieras que cuando esté en mi humilde saber trataré de responderte.
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