ayuda estoy haciendo un programa y necesito leer un linea especifica de un archivo TXT
lo estoy leyendo con fstream.open...
en el archivo tengo lo siguiente.
perro grande
gato mediano
gorila
elefante
tigre
leon
necesito leer solamente una de las lineas puede ser cualquiera de ellas ... y guardarla en un arreglo
caracter por caracter es decir:
si la linea que se leyo es tigre necesito que la guarde asi
arreglo[0]= T;
arreglo[1]= I;
arreglo[2]= G;
arreglo[3]= R;
arreglo[4]= E;
y si es la primera linea:
arreglo[0] = P
arreglo[1] = E
arreglo[2] = R
arreglo[3] = R
arreglo[4] = O
arreglo[5] = " "
arreglo[6] = G
arreglo[7] = R
arreglo[8] = A
arreglo[9] = N
arreglo[10] = D
arreglo[11] = E
agradeceria cualquier respuesta o que me puedan guiar de como resolrver este problema
MUCHAS GRACIAS....
La forma mas sencilla consiste en leer el contenido del archivo linea por linea hasta alcanzar la indicada o llegar al final de este.
Utilizando la clase string es mas o menos así:
ifstream in("Entrada.txt");
if (in){
cout << "Numero de linea a buscar (1 .. N): ";
unsigned pos;
cin >> pos;
string linea;
unsigned i = 0;
while (i != pos && getline(in, linea))
i++;
in.close();
if (i == pos)
cout << "Linea " << i << ": \"" << linea << '\"' << endl;
else
cout << "Error o el archivo contiene menos lineas" << endl;
}
Una vez obtienes la linea indicada si en base a esta deseas obtener una cadena "a la C" puedes utilizar la función miembro c_str (http://www.cplusplus.com/reference/string/string/c_str/).
Un saludo