如何用C语言实现数据的读取
2个回答
展开全部
敢不敢把需求说的详细点
追问
我原先·生成了一个txt文件···我现在需要读取txt文件里的数据用于另一个程序···· 但是txt文件的数据又有些是我不需要的···我只想读取txt文件里后两列数据···(txt文件里的数据的N行三列的)怎么编写???
追答
这个不好弄啊,这要看你的列跟列之间有没有特定的字符了,如里没有的话每列都是定长的也可以,放两个接收后两个列的缓冲区依次读入,读入的时候遇到\N取出缓冲区中的值,否则依次向下读!台果以上的两个条件都不具备那就弄不了了,主要是看你的数据有没有一定的规律!
希望可以帮到你!
来自:求助得到的回答
2013-01-07
展开全部
main()
{int a1[5000],a2[5000],a3[5000],a4[5000],a5[5000],a6[5000],b[5000];
long n,num,m=0;
FILE *fp;
fp=fopen("data.txt","r+w") ;
if(fp==NULL) printf("file open failed");
for(num=0;!feof(fp);num++)
{
fscanf(fp,"%d%d%d%d%d%d%d%d\n",&n,&a1[num],&a2[num],&a3[num],&a4[num],&a5[num],&a6[num],&b[num]);
m++;//做取数的条数
}
for(num=0;num<m;num++)//因为你不能取5000个 你那么定义肯定会有乱码的 后面几千的数据是没定义的
{
printf("%d %d %d %d %d %d %d %d\n",n,a1[num],a2[num],a3[num],a4[num],a5[num],a6[num],b[num]);
}
fclose(fp);
getchar();
}
{int a1[5000],a2[5000],a3[5000],a4[5000],a5[5000],a6[5000],b[5000];
long n,num,m=0;
FILE *fp;
fp=fopen("data.txt","r+w") ;
if(fp==NULL) printf("file open failed");
for(num=0;!feof(fp);num++)
{
fscanf(fp,"%d%d%d%d%d%d%d%d\n",&n,&a1[num],&a2[num],&a3[num],&a4[num],&a5[num],&a6[num],&b[num]);
m++;//做取数的条数
}
for(num=0;num<m;num++)//因为你不能取5000个 你那么定义肯定会有乱码的 后面几千的数据是没定义的
{
printf("%d %d %d %d %d %d %d %d\n",n,a1[num],a2[num],a3[num],a4[num],a5[num],a6[num],b[num]);
}
fclose(fp);
getchar();
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询