再问从文本文件读取数据到数组
我要从文本文件读取数据到数组。 文本文件格式呈方阵, 例如
+2.533500E+000+2.533500E+000+2.533500E+000+2.533500E+000
+2.533500E+000+2.533500E+000+2.533500E+000+2.533500E+000
+2.533500E+000+2.533500E+000+2.533500E+000+2.533500E+000
+2.533500E+000+2.533500E+000+2.533500E+000+2.533500E+000
我想把它原封不动的读到数组里面去, 请问应该怎么写。
我试过一下程序
#include <stdio.h>
void main ()
{
int i,j;
float array[2][2];
FILE *fp= fopen( "data.txt ", "r ");
for(i=0; i <2; ++i)
{
for(j=0;i <2;++i)
{
fscanf(fp, "%f ", &array[i,j]);
}
}
}
总是 " run time error "
还有,反过来,把数组按矩阵格式写到文本文件又该怎么写?
[解决办法]
#include <fstream>
#include <iostream>
using namespace std;
int main()
{
float arr[4][4];
int i=0, j=0;
ifstream ifile( "test.txt ");
while (!ifile.eof())
ifile> > arr[i][j], i=i+j/4, j=j%4;
for(i=0; i <4; i++)
{
for(j=0; j <4; j++)
cout < <arr[i][j] < < "\t ";
cout < <endl;
}
return 0;
}