• Jueves 14 de Noviembre de 2024, 22:53

Autor Tema:  Ficheros  (Leído 1854 veces)

JMAlonso

  • Miembro activo
  • **
  • Mensajes: 46
    • Ver Perfil
Ficheros
« en: Viernes 14 de Octubre de 2005, 00:44 »
0
Creo que es abusar un poco, pero si alguien tuviera un pequeño ejemplo
de como crear, leer y grabar en un fichero , estaria muy agradecido.

Buenas noches y saludos.

Enko

  • Miembro de PLATA
  • *****
  • Mensajes: 1562
  • Nacionalidad: 00
    • Ver Perfil
Re: Ficheros
« Respuesta #1 en: Viernes 14 de Octubre de 2005, 00:51 »
0
Que tipo de fichero: ¿de Texto, con Tipo o sin Tipo?

JMAlonso

  • Miembro activo
  • **
  • Mensajes: 46
    • Ver Perfil
Re: Ficheros
« Respuesta #2 en: Viernes 14 de Octubre de 2005, 16:57 »
0
Supongo que de texto , ya que de Tipo o sin Tipo no se muy bien lo que es.


Gracias y saludos.

bartolomeo

  • Miembro MUY activo
  • ***
  • Mensajes: 207
    • Ver Perfil
Re: Ficheros
« Respuesta #3 en: Viernes 14 de Octubre de 2005, 17:24 »
0
Ya revisaste otros hilos estoy seguro que esa pregunta la he respondido antes, no menosprecies el poder de esta opcion ("Busqueda")

[size=109]Por que Rolo soy yo¡¡¡¡¡[/size]

Amilius

  • Miembro HIPER activo
  • ****
  • Mensajes: 665
    • Ver Perfil
Re: Ficheros
« Respuesta #4 en: Viernes 14 de Octubre de 2005, 23:23 »
0
Cita de: "JMAlonso"
Supongo que de texto , ya que de Tipo o sin Tipo no se muy bien lo que es.


Gracias y saludos.
Estás más perdido que bala en año nuevo. :)
Para todo lo que tenga que ver con texto:
Fijate en la ayuda la clase de la propiedad lines del Tmemo.
Esa clase es el ancestro abstracto de la varita magica para todo lo que tengas que hacer con texto. :D

P.D. Antes que intentes instanciar una clase abstracta: Me refiero a TStringList no a TStrings

JMAlonso

  • Miembro activo
  • **
  • Mensajes: 46
    • Ver Perfil
Re: Ficheros
« Respuesta #5 en: Sábado 15 de Octubre de 2005, 18:49 »
0
lo que necesito es esto ,es decir escribir, leer etc. de un fichero, que viene en la ayuda de delphi pero tiene un error y no se como arreglarlo.


var
  BackupName: string;
  FileHandle: Integer;
  StringLen: Integer;
  X: Integer;
  Y: Integer;
begin
  if SaveDialog1.Execute then
  begin
    if FileExists(SaveDialog1.FileName) then
    begin
      BackupName := ExtractFileName(SaveDialog1.FileName);
      BackupName := ChangeFileExt(BackupName, '.BAK');
      if not RenameFile(SaveDialog1.FileName, BackupName) then

        raise Exception.Create('Unable to create backup file.');
    end;
    FileHandle := FileCreate(SaveDialog1.FileName);
    { Write out the number of rows and columns in the grid. }
    FileWrite(FileHandle,
      StringGrid1.ColCount, SizeOf(StringGrid1.ColCount));
    FileWrite(FileHandle,
      StringGrid1.RowCount, SizeOf(StringGrid1.RowCount));
    for X := 0 to StringGrid1.ColCount - 1 do
    begin

      for Y := 0 to StringGrid1.RowCount - 1 do
      begin
        { Write out the length of each string, followed by the string itself. }
        StringLen := Length(StringGrid1.Cells[X,Y]);
        FileWrite(FileHandle, StringLen, SizeOf(StringLen));
        FileWrite(FileHandle, StringGrid1.Cells[X,Y] ,Length(StringGrid1.Cells[X,Y]));
      end;
    end;
    FileClose(FileHandle);
  end;


el error esta en la linea en negrita, queriendo escribir en el fichero lo que contiene
la celda del grid y su longitud, pero da error.


Saludos.


Saludos.

Amilius

  • Miembro HIPER activo
  • ****
  • Mensajes: 665
    • Ver Perfil
Re: Ficheros
« Respuesta #6 en: Sábado 15 de Octubre de 2005, 23:14 »
0
:blink:
Eso es sencillísimo...  :D

StringLen := Length(StringGrid1.Cells[X,Y]);
FileWrite(FileHandle, StringLen, SizeOf(StringLen));
FileWrite(FileHandle, StringGrid1.Cells[X,Y] ,StringLen);