#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#pragma pack(1)
typedef struct {
char version;
char lastUpdate[3];
int numRecords;
short headerSize;
short recordSize;
char reserved[20];
} DBFHeader;
typedef struct {
char fieldName[11];
char fieldType;
int fieldDataAddress;
char fieldLength;
char fieldDecimalCount;
char reserved[14];
} DBFField;
int main() {
DBFHeader header;
DBFField field1, field2;
// Rellena la estructura del encabezado
header.version = 0x03; // Versión dBase III
// Rellena el resto de los campos del encabezado según tus necesidades
// Rellena la estructura de los campos
strcpy(field1.fieldName, "Field1");
field1.fieldType = 'C'; // Caracter
// Rellena el resto de los campos del primer campo según tus necesidades
strcpy(field2.fieldName, "Field2");
field2.fieldType = 'N'; // Numérico
// Rellena el resto de los campos del segundo campo según tus necesidades
// Crea el archivo .dbf
FILE* file = fopen("archivo.dbf", "wb");
if (file == NULL) {
printf("Error al crear el archivo\n");
return 1;
}
// Escribe el encabezado y los campos en el archivo
fwrite(&header, sizeof(DBFHeader), 1, file);
fwrite(&field1, sizeof(DBFField), 1, file);
fwrite(&field2, sizeof(DBFField), 1, file);
// Cierra el archivo
fclose(file);
printf("Archivo .dbf creado exitosamente\n");
return 0;
}