Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Temas - mnd00003

#1
Programación C/C++ / Ayuda al leer archivo
8 Octubre 2014, 11:26 AM
Buenas, necesito leer un archivo con los datos de dos matrices, el archivo contiene en primer lugar el numero de elementos(n), es decir la matrices serían de n x n , despues de una linea en blanco tengo los datos de la primera matriz separados por filas y con espacios en blanco entre columnas, el problema me surge con la segunda matriz, que también tiene los datos separados por filas, pero entre columnas el número de espacios en blanco entre datos de las distintas columnas varía, mi duda es cómo puedo obtener los datos de la matriz eliminando esos espacios en blanco. Aqui dejo un ejemplo de un archivo:

2

53 66
73 75

47   348 
7  71

La primera matriz he conseguido rellenarla con el código siguiente, pero no conozco la manera de rellenar la segunda eliminando los espacios en blanco, a ver si alguien puede echarme una manita :D Gracias!

int main(int argc, char** argv) {

    int tam;

    string filename = "bur26a.csv";
    string entrada;
    ifstream fi;
    stringstream ss;
    fi.open(filename.c_str());
    if (fi.good()) {
       
        getline(fi, entrada);
        ss.str(entrada);
        ss>>tam;
        int m1[tam][tam];
        int m2[tam][tam];
        getline(fi, entrada); // Elimino fila vacía
        for (int k = 1; k <= tam; k++) {
             
                for (int i = 0; i < tam; i++) {
                    getline(fi,entrada);
                    ss.str(entrada);
                    for (int j = 0; j < tam; j++) {
                        ss >> m1[i][j];
                        ss.ignore(1);                     
                    }
                }
            }

        }
       
       

    }

}
fi.close();