将文本文件读取到某个点并在该点输入数据

时间:2012-12-09 22:52:31

标签: c

基本上我用C语言编程,而我正在尝试的是将文本文件读取到某个点,然后一旦它在那里,然后打印我从程序计算的数据。

我已阅读所有freadfseekfgets函数等等,但并不真正了解如何使用它们。我有一个.kml文件,将与谷歌地球一起使用。我的程序计算坐标,所以我想把它们放在文件的一个点上。以下是文件中的数据:

/*******text file******/

Linestring

stlye

etc....

coordinates

3.0,36.8333333

1.986105,37.166788

0.963341,37.491533

-0.068231,37.807386

/*******eof*********/

因此它应该搜索,直到它读取坐标,然后我的所有数据都应输入。 我想可能有类似

的东西
char[25] = "coordinates";

if (function_that_searches_file == char){
    fprintf(myfile, "data%lf", data); // etc..
}
某处,但找不到任何东西。所以任何帮助或指向正确的方向都会非常感激。

1 个答案:

答案 0 :(得分:3)

C没有字符串,因此您无法将它们与这样的相等进行比较。您必须使用strcmp()来比较两个字符串(read about how to use it here)。

例如,您可以创建一个循环来读取文件的每一行,并在该循环中放置:

if(!strcmp(lineFromFile, "coordinates"))
{
    // Do something here
}

注意:strcmp()要记住有点棘手,因为它在相等时返回0。这就是为什么它被否定了,因为在C中0为假。