C语言中怎么把一个磁盘文件打开并完全显示出来?
如果用fopen函数if((fp=fopen("file","a"))==NULL){printf("cannotopenfile");exit(0);}到这里的时候文件...
如果用fopen函数
if((fp=fopen("file","a"))==NULL)
{printf("cannot open file");
exit(0);
}
到这里的时候文件是不是已经打开了呢?是不是文件已经打开但是不显示到屏幕上?
只读的形式不就是显示出来但是不能去更改数据吗?
能不能帮我写一段代码,就是打开一个已有数据的磁盘文件,让其内容显示到屏幕上面。 展开
if((fp=fopen("file","a"))==NULL)
{printf("cannot open file");
exit(0);
}
到这里的时候文件是不是已经打开了呢?是不是文件已经打开但是不显示到屏幕上?
只读的形式不就是显示出来但是不能去更改数据吗?
能不能帮我写一段代码,就是打开一个已有数据的磁盘文件,让其内容显示到屏幕上面。 展开
4个回答
展开全部
#include <stdio.h>
#include <stdlib.h> // for exit()
int main() {
FILE *fp;
char filename[] = "data.txt"; // 应该是文本文件
if((fp = fopen(filename,"rt")) == NULL) {
printf("cannot open file %s.\n",filename);
exit(1);
} // 到这里时,文件已经正常打开
while(!feof(fp)) putchar(fgetc(fp));
fclose(fp);
return 0;
}
展开全部
fopen函数表示打开一个文件 后面的a表示一种模式 表示只读。 你可以用fread fgets 函数等从文件中 读取你要的数据 然后存在你定义的地方 再打印 就可以在屏幕上显示。
注意 打开文件后 最后一定要fclose函数 关闭文件。
注意 打开文件后 最后一定要fclose函数 关闭文件。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
char *buf;
......
if((fp=fopen("file","a"))==NULL)
{printf("cannot open file");
exit(0);
}
fread(buf,1,1024,fp); //这里指从fp文件中读取一个为1024字节的内容保存到buf中
printf("%s",buf);
fclose(fp);
}
......
if((fp=fopen("file","a"))==NULL)
{printf("cannot open file");
exit(0);
}
fread(buf,1,1024,fp); //这里指从fp文件中读取一个为1024字节的内容保存到buf中
printf("%s",buf);
fclose(fp);
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你好,下面是参考程序,望采纳!
#include<stdio.h>
#include<stdlib.h>
main()
{
FILE *fp1,*fp2;
char filename1[20],filename2[20],ch[256];
int n=1;
printf("输入文件名:");
scanf("%s",filename1);
if((fp1=fopen(filename1,"rb"))==NULL)
{
printf("文件不可打开\n");
exit(0);
}
printf("输入复制文件:");
scanf("%s",filename2);
if((fp2=fopen(filename2,"a+"))==NULL)
{
printf("文件不可创建\n");
exit(1);
}
while(fgets(ch,256,fp1)!=NULL)
{
printf("%d行-->%s",n,ch);
fputs(ch,fp2);n++;
}
printf("\n结束\n");
fclose(fp1);
fclose(fp2);
}
#include<stdio.h>
#include<stdlib.h>
main()
{
FILE *fp1,*fp2;
char filename1[20],filename2[20],ch[256];
int n=1;
printf("输入文件名:");
scanf("%s",filename1);
if((fp1=fopen(filename1,"rb"))==NULL)
{
printf("文件不可打开\n");
exit(0);
}
printf("输入复制文件:");
scanf("%s",filename2);
if((fp2=fopen(filename2,"a+"))==NULL)
{
printf("文件不可创建\n");
exit(1);
}
while(fgets(ch,256,fp1)!=NULL)
{
printf("%d行-->%s",n,ch);
fputs(ch,fp2);n++;
}
printf("\n结束\n");
fclose(fp1);
fclose(fp2);
}
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询