| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1188 人关注过本帖
标题:请问如何把b.txt文件中指定行的内容挑出来存入另一个txt文件中?谢谢(指定 ...
只看楼主 加入收藏
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:0 
以下是引用nmgyxx在2013-11-14 15:03:09的发言:

非常感谢,请问char bf1[48]={0};是什么意思啊?
   初始化

DO IT YOURSELF !
2013-11-14 15:20
pink_duo
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
帖 子:209
专家分:1054
注 册:2013-11-5
收藏
得分:0 
以下是引用nmgyxx在2013-11-14 15:03:09的发言:

非常感谢,请问char bf1[48]={0};是什么意思啊?
数组初始化,所有数组元素被置为零

埋头做牛,抬头做人,低头做狗
2013-11-14 15:43
流年!
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:41
专家分:107
注 册:2013-11-7
收藏
得分:0 
定义一个数组,定义的时候并初始化化为0
2013-11-14 17:03
nmgyxx
Rank: 1
等 级:新手上路
帖 子:35
专家分:0
注 册:2012-3-10
收藏
得分:0 
回复 13楼 流年!
那为什么是48呢?
2013-11-15 08:11
流年!
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:41
专家分:107
注 册:2013-11-7
收藏
得分:0 
这个随便啊,只要够存你读出的那个数字就够了
2013-11-15 09:13
nmgyxx
Rank: 1
等 级:新手上路
帖 子:35
专家分:0
注 册:2012-3-10
收藏
得分:0 
回复 15楼 流年!
a.txt中有16757行5列,113k;b.txt中有58989行1200列,69M。请问这样的话原来的范围是否需要修改呢?谢谢
2013-11-15 10:17
liufashuai
Rank: 9Rank: 9Rank: 9
来 自:冥界-魔域-魂殿
等 级:蜘蛛侠
威 望:1
帖 子:370
专家分:1374
注 册:2012-6-22
收藏
得分:0 
纯粹的文件操作呗,当然你可以用脚本更方便

有一种落差是,你配不上自己的野心,也辜负了所受的苦难。






2013-11-15 11:06
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
還沒空看你的文件數據,根據文字描述,先做點手腳,把a.txt中的內容按行號排序好,然後依次從b.txt讀數寫出,就能夠一趟掃描完成任務,否則給自己添加不必要的麻煩。

授人以渔,不授人以鱼。
2013-11-15 12:28
流年!
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:41
专家分:107
注 册:2013-11-7
收藏
得分:0 
回复 16楼 nmgyxx
没听懂你说什么啊
2013-11-15 16:09
jsyjzz
Rank: 2
等 级:论坛游民
帖 子:29
专家分:73
注 册:2013-11-8
收藏
得分:10 
#include <stdio.h>
#include <string.h>
int main()
{
    int i,n,bai=1, line=0, len=0,j, num=0;
    char buf[10], buf1[1000], ch=1;
    FILE* fa;
           FILE* fb;
    FILE* fc;
    if((fb = fopen("b.txt", "r")) == NULL)
    {
        printf("open fb fail =====>>>\n");
        return -1;
    }
    if((fc = fopen("c.txt", "w")) == NULL)
    {
        printf("open fc fail =====>>>\n");
        return -1;
    }   
    if((fa = fopen("a.TXT", "r")) != NULL)
    {   
        while(fgets(buf, 10, fa) != NULL)
        {
            n = strlen(buf);
            for(i=0; i<n; i++)
            {   
                if(buf[i]<= '9' && buf[i] >= '0')
                    len++;
            }
            for(j=0; j<len; j++)
            {
                line += (buf[len-j-1]-'0')*bai;
                bai*=10;
                //printf("line =%d", buf[len-j-1]-'0');   
            }
            while(ch != EOF)
            {
                ch =fgetc(fb);
                if(ch == '\n')
                {
                    num++;
                    if(num == (line-1))
                    {
                        printf("line:%d\n", num);
                        fgets(buf1, 1000, fb);
                        fwrite(buf1, strlen(buf1)+1, 1, fc);
                        fputc('\n', fc);
                        break;
                    }
                }
               
            }   
            fseek(fb, 0, SEEK_SET);
            memset(buf, 0, sizeof(buf));
            ch = 1;
            num= line = len =0;
            bai=1;   
        }
    }   
    fclose(fa);
    fclose(fb);
    fclose(fc);
    return 0;
}
参考下吧
2013-11-15 16:29
快速回复:请问如何把b.txt文件中指定行的内容挑出来存入另一个txt文件中?谢谢( ...
数据加载中...
 
   



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

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