Hola buenas noches, quisiera que me ayudaran con un problema que tengo al usar la funcion fseek para modificar cierto registro en un archivo txt, el problema es que cuando ingreso un "ID" que no sea 1, no me toma ninguna registro, si pudieran ayudarme se los agradeceria mucho
Código [Seleccionar]
#include <iostream>
#include <conio>
#include <stdio.h>
#include <stdlib.h>
#include <string>
#include <ctype.h>
FILE *FMaterial = NULL;
struct Material
{
int iID;
char cNombre[25];
int iExist;
float fPrecioC;
int iExistm;
char cDescrip[30];
float fPrecioV;
int iEliminado;
};
void modificar()
{
clrscr();
Material material;
int auxID;
cout<<"ID Material: ";
cin>>auxID;
FMaterial = fopen("Material.txt","r+");
if (FMaterial == NULL)
{
cout<<"No hay registros en el archivo...\n";
}else
{
fseek(FMaterial, (long)(auxID-1)* sizeof(Material), 0);
fread(&material, sizeof(Material),1,FMaterial);
cout<<"Nombre: "material.cNombre<<"\n";
fclose(FMaterial);
}
}
void main()
{
modificar();
getch();
}