| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 404 人关注过本帖
标题:请教文件操作的嵌套问题
只看楼主 加入收藏
nantiangumo
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2007-6-14
收藏
 问题点数:0 回复次数:2 
请教文件操作的嵌套问题
现在有一思路,打开文件f1,从中读取一个字符串S1,然后打开f2,从头至尾查找s1在f2的位置。写了这么几行程序:
    while (fgets(cStringofOneLine1,sizeof(cStringofOneLine1),filePtr1) != NULL)
    {
        printf( " Read a line1: %s\n",cStringofOneLine1);//打印A处
        sscanf(cStringofOneLine1,"%s %s",cNailString1,cNetString1);
        filePtr2=fopen(nPtr2,"rt");
        while (fgets(cStringofOneLine2,sizeof(cStringofOneLine2),filePtr2) != NULL)        
        {
            fgets(cStringofOneLine2,sizeof(cStringofOneLine2),filePtr2);
            printf( " Read a line2: %s\n",cStringofOneLine2););//打印B处
     。。。。。。
上述程序为什么//打印A处能正常打印出来f1的各行,而//打印B处就不能打印f2的各行内容,上述代码有什么问题呢?
谢谢!

搜索更多相关主题的帖子: 嵌套 文件 
2010-05-22 17:44
skyuser213
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:37
专家分:117
注 册:2010-5-9
收藏
得分:0 
程序代码:
while (fgets(cStringofOneLine2,sizeof(cStringofOneLine2),filePtr2) != NULL)       
        {
            fgets(cStringofOneLine2,sizeof(cStringofOneLine2),filePtr2);
            printf( " Read a line2: %s\n",cStringofOneLine2););//打印B处
执行了两次fgets();
第一次执行文件指针加sizeof(cStringofOneLine2)长度  在执行 还会加
这样的话你会有一半内容给判断了 

改成这样
while (fgets(cStringofOneLine2,sizeof(cStringofOneLine2),filePtr2) != NULL)       
        {
            printf( " Read a line2: %s\n",cStringofOneLine2););//打印B处

2010-05-22 19:26
nantiangumo
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2007-6-14
收藏
得分:0 
刚才是拷贝错误了,对f2也是执行一次fgets,打印出来仍然不对,怀疑是不是因为文件打开嵌套的问题所致
2010-05-22 20:54
快速回复:请教文件操作的嵌套问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.022463 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved