Ver Mensaje Individual
  #1 (permalink)  
Antiguo 02/07/2009, 18:57
nox_gdl
 
Fecha de Ingreso: junio-2009
Mensajes: 14
Antigüedad: 15 años, 7 meses
Puntos: 1
ayuda manejo de archivos y array

Hola a todos, he tenido un problema que me esta volviendo loco, tengo que leer un archivo de texto, en la primer linea esta el numero de "gatos" (#) que deben estar en el archivo, necesito recorrer el archivo y guardar la informacion, yo hice un arreglo: gato[columna][linea][Ngato]

mi problema es que cuando quiero ver la información:
gato[0][1][1]
gato[1][1][1]
gato[2][1][1]
(o sea, de la primer linea del gato)
me muestra una informacion incorrecta.

Les dejo el codigo, estoy trabajando con devC++

#include "iostream"
#include "fstream"

using namespace std;


int transformar(int caso){
return 2;}


main(){
char cadena[5];
int cantidad;//guarda la cantidad de datos

ifstream fileGato("Gato.txt");
fileGato.getline(cadena,5);



//Armamos un numero decimal de gatos
cantidad=strlen(cadena);
switch(cantidad){
case 1: cantidad=transformar(1); break;
case 2: cantidad=transformar(2); break;
case 3: cantidad=transformar(3); break;
default: cout<<"";//Error: Linea 0 (!n)
}



int gato[2][2][cantidad];//columna,linea, Numero de gato
int columna, linea=0, $gato=0;
bool finGato=true;

while(!fileGato.eof()){
fileGato.getline(cadena,5);
cout<<endl<<"("<<cadena<<") ";


if(strlen(cadena)==3){

if(finGato){
$gato++;
finGato=false;
}

for(columna=0; columna<=2; columna++){
gato[columna][linea][$gato]=cadena[columna];
cout<<(char)gato[columna][linea][$gato]<<columna;
}

cout<<" "<<linea<<$gato;
linea++;
}//if

else{
linea=0;
finGato=true;}
}//while
cout<<endl<<endl;

cout<<(char)gato[0][1][1];
cout<<(char)gato[1][1][1];
cout<<(char)gato[2][1][1];

cout<<endl<<endl;
for($gato=1; $gato<=cantidad; $gato++){
for(linea=0; linea<=2; linea++){
cout<<endl;
for(columna=0; columna<=2; columna++){
cout<<(char)gato[columna][linea][$gato];
}
}
}
cout<<endl<<endl;
fileGato.close();
system("pause");
return 0;
}




este es el archivo Gato.txt

2
oox
#x#
xo#


xxo
oox
xoo