Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > Lazarus, FreePascal, Kylix, etc.
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 25-07-2007
@nit@ @nit@ is offline
Registrado
 
Registrado: jul 2007
Posts: 3
Poder: 0
@nit@ Va por buen camino
Exclamation Fiecheros binarios en delphi

Si yo tengo ficheros binarios en los que guardo datos de personas (como puede ser el nombre, la edad, numero de documento, estado civil), como hago para borrar alguno de estos datos o modificarlo?.
Responder Con Cita
  #2  
Antiguo 25-07-2007
Avatar de jhonny
jhonny jhonny is offline
Jhonny Suárez
 
Registrado: may 2003
Ubicación: Colombia
Posts: 7.058
Poder: 29
jhonny Va camino a la famajhonny Va camino a la fama
Pero... ¿De que manera guardas esos datos?, ¿En una BD, en archivo plano, en un XML?, si la cosa es en un archivo binario, pues la verdad es que me confundo bastante, ya que para meter todo eso dentro de un ejecutable, estaríamos hablando de una especie de recurso o algo asi, pero al momento de compilarlo.

Mejor dicho, sería muy agradable que nos informaras un poco mas detalladamente acerca del asunto.
__________________
Lecciones de mi Madre. Tema: modificación del comportamiento, "Pará de actuar como tu padre!"

http://www.purodelphi.com/
http://www.nosolodelphi.com/
Responder Con Cita
  #3  
Antiguo 26-07-2007
@nit@ @nit@ is offline
Registrado
 
Registrado: jul 2007
Posts: 3
Poder: 0
@nit@ Va por buen camino
Aca explico como hago:
Código PHP:
Type
registro
=record
nombre
:string[20];
documento:string[10];
end;
Var
cliente:registro;
personas:type of registro
Al crear el archivo hago lo siguiente
assignfile(personas,'archivo.dat');
rewrite(personas);

Despues si quiero guardar algo en el archivo uso:
write(personas,clientes);

Ahora el tema es que cuando quiero borrar o modificar algo no se como hacerlos porque con la sentencia Read solo puedo leer lo ultimo que guarde en el archivo.
Responder Con Cita
  #4  
Antiguo 26-07-2007
Avatar de cHackAll
[cHackAll] cHackAll is offline
Baneado?
 
Registrado: oct 2006
Posts: 2.159
Poder: 20
cHackAll Va por buen camino
Código Delphi [-]
function DelReg(Index: Cardinal): Boolean;
var hFile, Pos, Dummy: Cardinal; var Last: TRegistro;
begin
 hFile := CreateFile('archivo.dat', GENERIC_READ + GENERIC_WRITE, 0, nil, OPEN_EXISTING, 0, 0);
 Result := hFile <> INVALID_HANDLE_VALUE;
 if not Result then Exit;                                            // No se pudo acceder al archivo
 Result := Index < (GetFileSize(hFile, nil) div SizeOf(TRegistro));
 if not Result then                                                  // Registro fuera de rango
  begin
   CloseHandle(hFile);
   Exit;
  end;
 Pos := SetFilePointer(hFile, -SizeOf(Last), nil, FILE_END);         // Te vas al último registro
 ReadFile(hFile, Last, SizeOf(TRegistro), Dummy, nil);               // Lo lees
 SetFilePointer(hFile, Index * SizeOf(Last), nil, 0);                // Te vas al registro a eliminar
 WriteFile(hFile, Last, SizeOf(Last), Dummy, nil);                   // Lo pisas con el último
 SetFilePointer(hFile, Pos, nil, 0);                                 // Regresas al ultimo registro
 SetEndOfFile(hFile);                                                // Truncas el archivo en ésa posición
 CloseHandle(hFile);
end;

Decía "en delphi", luego ví "Código PHP" así que te lo dejo con pura API. Funciona si no interesa el orden de los registros.
Responder Con Cita
  #5  
Antiguo 26-07-2007
@nit@ @nit@ is offline
Registrado
 
Registrado: jul 2007
Posts: 3
Poder: 0
@nit@ Va por buen camino
Gracias por tu respuesta.. pero los codigos que necesito son para delphi.. el tema es que sin querer aprete un icono que no debia y aparecia codigo Php.
Disculpa las molestias y si podes pasame el cogido para delphi.
Gracias!
Responder Con Cita
  #6  
Antiguo 27-07-2007
Avatar de cHackAll
[cHackAll] cHackAll is offline
Baneado?
 
Registrado: oct 2006
Posts: 2.159
Poder: 20
cHackAll Va por buen camino
Lo que te deje esta en sintaxis Pascal así que te funciona en Delphi. Solo que use APIs pues no me gusta el tipo file, file type y demas
Responder Con Cita
Respuesta



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
Manejo de archivos binarios en Delphi rodrigo19 Varios 6 26-05-2007 02:36:52
comparar binarios finees Varios 0 19-11-2006 21:58:17
archivos binarios kazcote Varios 5 05-12-2005 04:02:35
Operaciones con Binarios douguiehm Varios 0 19-05-2005 18:41:08
Ficheros binarios deimonio Varios 2 29-12-2003 13:38:47


La franja horaria es GMT +2. Ahora son las 21:31:00.


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