archivo tipo txt ayuda???

Iniciado por nolram, 6 Abril 2014, 16:34 PM

0 Miembros y 1 Visitante están viendo este tema.

nolram

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....

rir3760

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í:
Código (cpp) [Seleccionar]
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.

Un saludo
C retains the basic philosophy that programmers know what they are doing; it only requires that they state their intentions explicitly.
--
Kernighan & Ritchie, The C programming language