Hola, hace solo unos dias estoy aprendiendo c++, y me piden un programa algo asi como para gestionar una biblioteca, pero tengo problemas con el principio del codigo, ya que los datos se tienen que leer desde un archivo de texto de libros con la siguiente informacion:
donde por cada libro se agrega una linea como la anterior, pero he buscado por varias partes y no se como acceder a una linea independiente de esta informacion; por ejemplo, si quiero la linea 5 de este archivo de texto. Ahora lo que llevo hasta el momento es lo que incluyo en el codigo, esta asi porque tambien necesito obtener cada dato por separado para trabajarlos despues en los metodos.
Alguien me podria ayudar si se puede hacer de alguna forma mejor o como hacerlo para que pueda acceder a una linea especifica?
(Uso Dev C++ y debo hacerlo con arreglos)
codigo | nombre | autor | editorial | rut1 | rut2 | rut3
donde por cada libro se agrega una linea como la anterior, pero he buscado por varias partes y no se como acceder a una linea independiente de esta informacion; por ejemplo, si quiero la linea 5 de este archivo de texto. Ahora lo que llevo hasta el momento es lo que incluyo en el codigo, esta asi porque tambien necesito obtener cada dato por separado para trabajarlos despues en los metodos.
Código [Seleccionar]
#include <iostream>
#include <fstream>
using namespace std;
int main(){
FILE *f = fopen("Libros.txt", "r");
char codigo[10];
char nombre[100];
char autor[100];
char editorial[100];
char rut1[20],rut2[20],rut3[20];
int n=10;//la idea es que n sea la cantidad de filas que tenga el archivo
for(int i=1;i<n;i++){
fscanf (f, "%[a-z 0-9] | %[a-zA-Z0-9 -] | %[a-zA-Z0-9 -] | %[a-zA-Z0-9 .-] | %[a-zA-Z0-9 .-] | %[a-zA-Z0-9 .-] | %[a-zA-Z0-9 .-]\n", &codigo, &nombre, &autor, &editorial, &rut1, &rut2, &rut3);
cout<< codigo<<" + "<< nombre<< " + " <<autor<< " + " <<editorial<< " + " <<rut1<< " + " <<rut2<< " + " <<rut3<<endl;
}
system("PAUSE");
return 0;
}
Alguien me podria ayudar si se puede hacer de alguna forma mejor o como hacerlo para que pueda acceder a una linea especifica?
(Uso Dev C++ y debo hacerlo con arreglos)