私は、この文字列の各部分がそれぞれの値を持つことになりますので、このファイルからデータを取得したい情報にCでファイルからデータを読み取る方法は?
0001:Jack:Jeremy:6:38.0
0002:Mat:Steve:1:44.5
0003:Jessy:Rans:10:50.0
0004:Van Red:Jimmy:3:25.75
0005:Peter:John:8:42.25
0006:Mat:Jeff:3:62.0
を含むファイルを持っています。 たとえば、double num
は3になります。 char firstn[20]
は「ジャック」、char lastn[20]
は「ジェレミー」、int t
は6、double hour
は38.0となります。
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
{
FILE *read, *write;
int i, group;
double hours, num;
char lastn[20],
firstn[20];
read = fopen("people.txt", "r");
if (read == NULL) {
printf("Error, Can not open the file\n");
exit(0);
}
write = fopen("people.dat", "w");
for (i=0; i<6; i++) {
fscanf(read, "%lf:%s:%s:%d:%lf", &num, lastn, firstn, &group, &hours);
fprintf(write, "Number: %lf Fname: %s Lastn: %s Group: %d Hours: %.1lf\n", num, lastn, firstn, group, hours);
}
fclose(read);
fclose(write);
return 0;
}
私はそうしようとしています、私の文字列lastn
は、行の最後まで、すべての情報を取ります。
どのように指定することができますか?firstn
は:
まで文字を取り、lastn
の文字列はJeremyのみになり、グループには6だけかかるなどです。
ええ、その大きな割り当てが、私はすべてのアイデアを持っていますが、他に何かをする方法がありますが、変数をスタックするだけです。 –
宿題に「宿題」とタグを付けてください –
申し訳ありませんが、それを知らなかった、今すぐ修正します。 –