Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

 
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 30-03-2009
Avatar de voldemmor
voldemmor voldemmor is offline
Miembro
 
Registrado: ago 2006
Posts: 232
Poder: 18
voldemmor Va por buen camino
Exclamation Leer un Archivo Binario

hola amigos estoy realizando un sistema que debo intercambiar informacion entre dos programas que estan separados.
Buscando me di con el manejo de archivos binarios, me parecio facil, mas que manejar xml,

bueno ya creo la funcion para el archivo que tengo que intercambiar.
Código Delphi [-]
type
  TEstudiante = record
  codigo_plantel  :String[10];
  acta            :String[5];
  nombres         :String[70];
  cedula          :String[11];
  sexo            :String[1];
  nota            :String[2];
  nota_letras     :String[15];
  fecha           :TDate;
  observaciones   :String[70];
  titulo_tipo     :String[20];
  anio            :String[10];
  end;


//GUARDAR

procedure TForm1.BitBtn1Click(Sender: TObject);
var
estudiante : TEstudiante;
F         : File of TEstudiante;
ii:integer;
begin
ii:=1;
if SaveDialog1.Execute then
begin
AssignFile( F, SaveDialog1.FileName );
Rewrite( F );
while (sgAlumnos.Cells[0,ii] <> '')and(sgAlumnos.Cells[0,ii] <> ' ')or(ii=201)do
begin
 with estudiante do
 begin
  codigo_plantel := txtcodigo.Text;
  acta := sgAlumnos.Cells[0,ii];
  nombres := sgAlumnos.Cells[1,ii];
  cedula := sgAlumnos.Cells[2,ii];
  sexo :=sgAlumnos.Cells[3,ii];
  nota := sgAlumnos.Cells[4,ii];
  nota_letras := NotaCuantitativa(StrToInt(sgAlumnos.Cells[4,ii]));
  fecha := StrToDate(sgAlumnos.Cells[5,ii]);
  observaciones := sgAlumnos.Cells[6,ii];
  titulo_tipo := 'PRIMARIA';
  anio := mtxtanio.Text;
 end;
 Write( F, estudiante );
 ii:=ii+1;
end;
CloseFile( F );
end;

end;

como no es tan grande el archivo no uso buffer.

el problema es que no he podido realizar el proceso inverso. leer el archivo binario y analizar los datos registro a registro.

he probado y solo puedo abrir y leeo el primer registro
Código Delphi [-]
//leer

procedure TForm1.Button1Click(Sender: TObject);
var
estudiante : TEstudiante;
F         : File of TEstudiante;
begin
if OpenDialog1.Execute then
begin
  AssignFile( F, OpenDialog1.FileName );
  Reset( F );
  Read( F, estudiante );
   ShowMessage(estudiante.nombres);
  // Cerramos el fichero
  CloseFile( F );

end;
end;


espero que podais ayudar con esto.

Ho dadme otra opción
__________________
tu mente es tu mas presiado tesoro, cultiva tu conocimiento
Responder Con Cita
 



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
transformar archivo binario a texto pakitto Varios 1 26-11-2008 14:09:45
Modificar registro en archivo binario tamarinda C++ Builder 3 06-03-2008 21:01:20
Eliminar registro en archivo binario tamarinda C++ Builder 2 06-03-2008 20:59:25
Cargar array of char de un archivo binario JosepZ Varios 9 12-11-2007 23:28:16
leer de un archivo javikanin Varios 3 23-11-2004 20:34:32


La franja horaria es GMT +2. Ahora son las 15:42:12.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi