Pascal/Turbo Pascal - BlockWrite y BlockRead en archivos de longitud variable

 
Vista:
sin imagen de perfil

BlockWrite y BlockRead en archivos de longitud variable

Publicado por Agustin (2 intervenciones) el 01/05/2017 01:17:06
Hola, estoy tratando de cargar un archivo de longitud variable con nombres separados por # pero no funciona la operacion BlockWrite y no entiendo porque.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Procedure CrearArchivo (var a: file);
Var
  nombre: string;
Begin
  Rewrite(a, 1);{Tamaño en Bytes de los bloques que se van a usar para la escritura}
 
  Write ('Nombre: ');
  Readln(nombre);
  While (nombre <> '') do begin
 
    BlockWrite(a, nombre, length(nombre)+1); {Cantidad de bloques a escribir en el archivo}
    BlockWrite(a,'#',1);     {no funciona}
 
    Write('Nombre: ');
    Readln(nombre);
  end;
 
  Close(a);
end;

En la linea que no funciona Lazarus dice Error: variable identifier expected

Alguien tiene idea de por que? Gracias !
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

BlockWrite y BlockRead en archivos de longitud variable

Publicado por ramon (2158 intervenciones) el 04/05/2017 16:18:48
mira esto.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Procedure CrearArchivo (var a: file);
Var
  nombre: string;
Begin
  assign(a,'temporal.dat');
  Rewrite(a, 1);{Tamaño en Bytes de los bloques que se van a usar para la escritura}
 
  Write ('Nombre: ');
  Readln(nombre);
  While (nombre <> '') do begin
  nombre := nombre + '#';
  BlockWrite(a, nombre, length(nombre)); {Cantidad de bloques a escribir en el archivo}
  end;
 
  Close(a);
end;
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar
sin imagen de perfil

BlockWrite y BlockRead en archivos de longitud variable

Publicado por Agustin (2 intervenciones) el 17/05/2017 22:48:21
Me ayudo bastante! Gracias
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