标题:用C语言从多个文件获取不同的数组并写入不同的新文件中
取消只看楼主
zzmx
Rank: 1
等 级:新手上路
帖 子:48
专家分:0
注 册:2020-2-4
结帖率:75%
已结贴  问题点数:20 回复次数:1 
用C语言从多个文件获取不同的数组并写入不同的新文件中
任务需要,我想把数据从多个文件获取不同的数组并写入不同的新文件中(而且是一个对应一个),下面是我写的把一个文件中的数据写入另一个文件中的程序,这个调试成功了。但是我需要把相应的约1000个文件都这么操作,写的程序运行后只是建立了新的数据文件,并没有将数据一一写入,文件是空的。请教我的程序该怎么改?(不知道我说明白了没有
这是文件一对一写入的代码
#include <iostream>
int main(int argc, char** argv)
{
int i,line,flag;
double a,b;
char ch;
FILE *fp=fopen("G:\\uz\\uz\\C3energy00000.txt","r");
FILE *fpp=fopen("G:\\CCC\\z.txt","w");
if(fp==NULL)
printf("the file don't exist.");
for(i=1,line=1;;i++)
{
    ch=fgetc(fp);
    if(ch=='\n')
    line+=1;
    if(ch==EOF)
    break;
}
printf("%d\n",line);
fp=fopen("G:\\uz\\uz\\C3energy00000.txt","r");
for(flag=0;flag<5;)//skip the first five line
    {
        ch=fgetc(fp);
        if (ch=='\n')
        {
            flag+=1;
        }
    }
    line=line-5;
while (fscanf(fp,"%lf %lf",&a,&b)==2)
    {
        //a=a*1000000;
        fprintf(fpp,"%e \n",a*100000);
        printf("%e \n",a);
    }
fclose(fp);
fclose(fpp);
    return 0;
}

这是多个一对一写入的代码
#include <iostream>
int main(int argc, char** argv)
{
int i,line,flag,b=100000,c=100000;
double a;
char ch,filename[1000],data[1000];
FILE *fp;
FILE *fpp;
//creat new file
for(c=100000;c<100854;c++)
{
sprintf(data,"G:\\uz\\new\\data%d.txt",c);
fpp=fopen(data,"w");   
}
if(fpp==NULL)
printf("error\n");
//循环,读取多个文件数据行数
for(b=100000;b<100854;b++)
{
sprintf(filename,"G:\\uz\\uz2\\C3energy%d.txt",b);
fp=fopen(filename,"r");
for(i=0,line=0;;i++)
  {
    ch=fgetc(fp);
    if(ch=='\n')
    line+=1;
    if(ch==EOF)
    break;
  }
}
//循环,读取多个文件数据并写入新的文件
for(b=100000;b<100854;b++)
{
fp=fopen("filename","r");
for(flag=0;flag<5;)//skip the first five line
    {
        ch=fgetc(fp);
        if (ch=='\n')
        {
            flag+=1;
        }      
    }
    line=line-5;
for(c=100000;c<100004;c++)
   {
   
    if(fpp==NULL)
    printf("the file don't exist.");
    while (fscanf(fp,"%lf %lf",&a,&b)==2)
    {
        //a=a*1000000;
        fpp=fopen(data,"w");
        fprintf(fpp,"%e \n",a);
    }        
   }  
}
fclose(fp);
   fclose(fpp);
    return 0;
}
附几组数据
data.zip (35.04 KB)



搜索更多相关主题的帖子: flag for 写入 文件 line 
2020-02-08 18:59
zzmx
Rank: 1
等 级:新手上路
帖 子:48
专家分:0
注 册:2020-2-4
得分:0 
回复 2楼 纯蓝之刃
谢谢!
2020-02-08 20:28



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-499158-1-1.html




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

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