ファイルの読み込み
Posted: 2011年11月25日(金) 11:21
次のようなファイルについて,すべての行について,
二つ目の空白の次の文字から,そのあとの1行を読み込みたいと思っています.
ファイル名 B00001.dat
8.000000 8.000000 0.092336 0.060463
1016.000000 248.000000 -0.210196 0.098426
8.000000 264.000000 0.050088 0.040239
struct DATA{
char x[50];
};
//構造体型枠宣言
struct DATA a[64][64];
struct DATA b[64][64];
int file_read(char *x){
int n=64,m=0,l=0,i=0; //カウンタ初期化
FILE *fp; //ファイルポインタ
char s[256]; //ファイル読み込みバッファ
fp = fopen(x, "r"); //読み込みモードでファイルオープン
if (fp == NULL) exit(1); //エラートラップ
while (fgets(s,256,fp) != NULL){ //読み込み
m++;
if(m<4)continue;
if(n<0){
l++;
n+=64;
}
strcpy(a[n][l].x,s);
n--;
}
fclose(fp);
return 0;
}
構造体の行列を作成し,それに読み込んだファイルを格納するようにしています.
1行を読み込むところまでは出来ています.
わかる方,教えてください!!
二つ目の空白の次の文字から,そのあとの1行を読み込みたいと思っています.
ファイル名 B00001.dat
8.000000 8.000000 0.092336 0.060463
1016.000000 248.000000 -0.210196 0.098426
8.000000 264.000000 0.050088 0.040239
struct DATA{
char x[50];
};
//構造体型枠宣言
struct DATA a[64][64];
struct DATA b[64][64];
int file_read(char *x){
int n=64,m=0,l=0,i=0; //カウンタ初期化
FILE *fp; //ファイルポインタ
char s[256]; //ファイル読み込みバッファ
fp = fopen(x, "r"); //読み込みモードでファイルオープン
if (fp == NULL) exit(1); //エラートラップ
while (fgets(s,256,fp) != NULL){ //読み込み
m++;
if(m<4)continue;
if(n<0){
l++;
n+=64;
}
strcpy(a[n][l].x,s);
n--;
}
fclose(fp);
return 0;
}
構造体の行列を作成し,それに読み込んだファイルを格納するようにしています.
1行を読み込むところまでは出来ています.
わかる方,教えてください!!