实际上,我是编程和技术方面的新手,我想创建某种程序,在其中放入一些数据,然后将其打印到.txt文件中。 (完成!),所以现在我想读取文件,并获取文件中现有的权重值。并将现有值与新值进行比较,并从中有所作为。 (例如:减肥:0.2公斤或类似的东西)。
实际上就是我如何创建数据
FILE *f;
f = fopen("weight.txt", "a");
fprintf(f, "\nDate: %02i.%02i.%4i\nTime: %02i:%02i Uhr\nWeight: %0.2f\n", data.day, data.month, data.year, data.hour, data.minute, data.weight);
fclose(f);
现在我想减轻这个文件的重量,并将其与新文件进行比较。我不知道该如何处理。
答案 0 :(得分:0)
为了写入文件,您使用了FILE类型和一些内置的file I/O
C函数。
您是否尝试过搜索其他可用于处理文件的内置C函数?
答案 1 :(得分:-2)
您可以了解fscanf
的工作原理here和fgets
here
FILE f = fopen("weight.txt", "r");
char buf[100]; // buffer string
float weight; // variable to hold the input weight
// read the first three lines
fgets(buf, 100, f);
fgets(buf, 100, f);
fgets(buf, 100, f);
// read the last line using fscanf and
// store the weight read
fscanf(f, "Weight: %f\n", &weight);
fclose(f);
printf("Weigth: %f\n", weight);