}
/* Graba registros */
- id1 = efs->grabar_registro(efs, reg1, sizeof(reg1)+1, &err);
+ id1 = efs->grabar_registro(efs, reg1, sizeof(reg1), &err);
if (err) {
printf("No se pudo grabar el registro 1 (%d).\n", err);
- goto error;
+ goto out;
}
printf("Se grabó el registro 1 (size: %u) con el id %lu.\n", sizeof(reg1), id1);
- id2 = efs->grabar_registro(efs, reg2, sizeof(reg2)+1, &err);
+ id2 = efs->grabar_registro(efs, reg2, sizeof(reg2), &err);
if (err) {
printf("No se pudo grabar el registro 2 (%d).\n", err);
- goto error;
+ goto out;
}
printf("Se grabó el registro 2 (size: %u) con el id %lu.\n", sizeof(reg2), id2);
- id3 = efs->grabar_registro(efs, reg3, sizeof(reg3)+1, &err);
+ id3 = efs->grabar_registro(efs, reg3, sizeof(reg3), &err);
if (err) {
printf("No se pudo grabar el registro 3 (%d).\n", err);
- goto error;
+ goto out;
}
printf("Se grabó el registro 3 (size: %u) con el id %lu.\n", sizeof(reg3), id3);
reg = efs->leer_registro(efs, id1, &size, &err);
if (err) {
printf("No se pudo leer el registro 1 (%d).\n", err);
- goto error;
+ goto out;
}
printf("El contenido del registro 1 es: '%s'.\n", reg);
free(reg);
reg = efs->leer_registro(efs, id2, &size, &err);
if (err) {
printf("No se pudo leer el registro 2 (%d).\n", err);
- goto error;
+ goto out;
}
printf("El contenido del registro 2 es: '%s'.\n", reg);
free(reg);
reg = efs->leer_registro(efs, id3, &size, &err);
if (err) {
printf("No se pudo leer el registro 3 (%d).\n", err);
- goto error;
+ goto out;
}
printf("El contenido del registro 3 es: '%s'.\n", reg);
free(reg);
/* Ve archivos auxiliares */
printf("\nArchivos auxiliares:\n\n");
ver_archivo_FS(efs);
+ printf("\n--------------------------------------------------\n\n");
- emufs_destruir(efs);
- return 0;
+ /* Borra registro */
+ err = efs->borrar_registro(efs, id2);
+ if (err) {
+ printf("No se pudo borrar el registro 2 (%d).\n", err);
+ goto out;
+ }
+ printf("Registro 2 (id = %lu) borrado!.\n", id2);
+
+ /* Lee registro 3 (desplazado a izquierda) */
+ reg = efs->leer_registro(efs, id3, &size, &err);
+ if (err) {
+ printf("No se pudo leer el registro 3 (%d).\n", err);
+ goto out;
+ }
+ printf("El contenido del registro 3 es: '%s'.\n", reg);
+ free(reg);
+
+ /* Ve archivos auxiliares */
+ printf("\n--------------------------------------------------\n");
+ printf("Archivos auxiliares:\n\n");
+ ver_archivo_FS(efs);
+
+ /* compacta archivo */
+ printf("\n--------------------------------------------------\n");
+ printf("Compactando archivo.......\n\n");
+ efs->compactar(efs);
+
+ /* Lee registros */
+ reg = efs->leer_registro(efs, id1, &size, &err);
+ if (err) {
+ printf("No se pudo leer el registro 1 (%d).\n", err);
+ goto out;
+ }
+ printf("El contenido del registro 1 es: '%s'.\n", reg);
+ free(reg);
+
+ reg = efs->leer_registro(efs, id3, &size, &err);
+ if (err) {
+ printf("No se pudo leer el registro 3 (%d).\n", err);
+ goto out;
+ }
+ printf("El contenido del registro 3 es: '%s'.\n", reg);
+ free(reg);
+
+ /* Ve archivos auxiliares */
+ printf("\n--------------------------------------------------\n");
+ printf("Archivos auxiliares:\n\n");
+ ver_archivo_FS(efs);
-error:
+out:
emufs_destruir(efs);
- return 2;
+ return err;
}