tengo que leer en los archivos de datos que se parecen a esto:Cómo leer los números desde un archivo ASCII (C++)
* SZA: 10.00
2.648 2.648 2.648 2.648 2.648 2.648 2.648 2.649 2.650 2.650
2.652 2.653 2.652 2.653 2.654 2.654 2.654 2.654 2.654 2.654
2.654 2.654 2.654 2.655 2.656 2.656 2.657 2.657 2.657 2.656
2.656 2.655 2.655 2.653 2.653 2.653 2.654 2.658 2.669 2.669
2.667 2.666 2.666 2.664 2.663 2.663 2.663 2.662 2.663 2.663
2.663 2.663 2.663 2.663 2.662 2.660 2.656 2.657 2.657 2.657
2.654 2.653 2.652 2.651 2.648 2.647 2.646 2.642 2.641 2.637
2.636 2.636 2.634 2.635 2.635 2.635 2.635 2.634 2.633 2.633
2.633 2.634 2.634 2.635 2.637 2.638 2.637 2.639 2.640 2.640
2.639 2.640 2.640 2.639 2.639 2.638 2.640 2.640 2.638 2.639
2.638 2.638 2.638 2.638 2.637 2.637 2.637 2.634 2.635 2.636
2.637 2.639 2.641 2.641 2.643 2.643 2.643 2.642 2.643 2.642
2.641 2.642 2.642 2.643 2.645 2.645 2.645 2.645
¿Cuál sería la forma más elegante para leer este archivo en una matriz de flotadores?
Sé cómo leer cada línea en una cadena, y sé cómo convertir la cadena en flotante usando atof()
. ¿Pero cómo hago el resto más fácilmente?
He oído hablar de los buffers de cadenas, ¿me puede ayudar esto?
El bucle genérico "leer todos los flotadores" sería 'número flotante; while (es >> número) result.push_back (número); ' – sth
Aunque el suyo es, por supuesto, equivalente. – sth
@sth: De hecho, eso es más escueto, aunque no me gusta que la variable 'number' salga del ciclo. – sbi