LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 658|回复: 5

求一段代码,在指定的一个文本文件中,搜索一个指定的单词,然后读出来

[复制链接]
发表于 2004-4-24 00:28:00 | 显示全部楼层 |阅读模式
如,有一个如下格式的文本文件
name     sun
ages     18
tall        170
address    hunan


我希望能找到tall  ,然后读出 170  送到一个整形数变量中

谢谢,高手了
发表于 2004-4-24 09:41:22 | 显示全部楼层
[php]
#include<stdio.h>
#include<string.h>

int main (int argc, char* argv[])
{
        FILE* filename;
        char buf[512];
        char *p;

        // open target file
        if ( (filename = fopen(argv[1], "r")) == NULL ) {
                printf("can't open file %s\n", argv[1]);
                exit(1);
        }

        while ( fgets(buf, 512, filename) != NULL) {
                p = strtok(buf, " ");
                while (  p != NULL) {
                        if (!strcmp(p, "tall")) {
                                p= strtok(NULL, " ");
                                break;
                        }
                        else
                                p= strtok(NULL, " ");
                 }
                 if (p) printf("%s\n", p);
        }

}
[/php]
运行结果:
[kj501@s2023 c]$ gcc temp.c
[kj501@s2023 c]$ ./a.out temp.txt
170

[kj501@s2023 c]$
 楼主| 发表于 2004-4-24 10:57:01 | 显示全部楼层
高人,strtok  是干什么的?
谢谢了
我就试一试
发表于 2004-4-24 11:49:03 | 显示全部楼层
man strtok
 楼主| 发表于 2004-4-24 12:21:55 | 显示全部楼层
iconv:未知的1283处的非法输入序列
:end

这是怎么回事???
发表于 2004-4-25 09:31:20 | 显示全部楼层
你的文本文件中有中文字符吗?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表