C语言中如何调用文本文件
自己随便新建一个文本文件,然后打开C语言软件,能否把该文本文件直接读入程序中奇怪,都按你们说的操作,同学也说是这样,怎么运行时还是那样呢...
自己随便新建一个文本文件,然后打开C语言软件,能否把该文本文件直接读入程序中
奇怪,都按你们说的操作,同学也说是这样,怎么运行时还是那样呢 展开
奇怪,都按你们说的操作,同学也说是这样,怎么运行时还是那样呢 展开
展开全部
在C语言中,调用文本文件有两种情况:
1 在代码中直接使用该文件。
这种情况,本质上是把文本文件当做头文件来使用,而文本文件中的数据当做代码的一部分。
比如
#include "a.txt"
这时,需要保证a.txt中是合法的C语言格式。
2 在运行中调用文本文件。
可以使用C语言的文件操作函数,使用FILE *fp = fopen("a.txt", "r");打开文件。
然后用fscanf, fgets, fread,fgetc等函数进行读取。
最终使用结束后,需要调用fclose函数关闭文件。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2008-03-30
展开全部
当然可以!
fopen()函数打开文件
fscanf()、fgets()、fgetc()等函数从文件读取内容
fclose()函数关闭文件
就这么简单!
例如自己新建一个文本文件,c:\1.txt,要用C程序显示出文件的内容:
#include <stdio.h>
int main(void)
{
FILE *f;
char c;
f=fopen("C:\\1.txt","r");
while ((c=fgetc(f))!=EOF)
putchar(c);
fclose(f);
return 0;
}
*********************************************
文件名不能用中文,文件路径中最好不要有空格
fopen()函数打开文件
fscanf()、fgets()、fgetc()等函数从文件读取内容
fclose()函数关闭文件
就这么简单!
例如自己新建一个文本文件,c:\1.txt,要用C程序显示出文件的内容:
#include <stdio.h>
int main(void)
{
FILE *f;
char c;
f=fopen("C:\\1.txt","r");
while ((c=fgetc(f))!=EOF)
putchar(c);
fclose(f);
return 0;
}
*********************************************
文件名不能用中文,文件路径中最好不要有空格
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
解决思路:先定位到一个txt文件,比如D:\test\test.txt,然后用fopen以只读方式打开,逐行读取,最后关闭处理数据:
参考代码如下:
#include <stdio.h>
#include <string.h>
void main()
{
int i = 0;
char *buf;
FILE *fp; //文件指针
fp = fopen("test.txt","r"); //以只读方式打开
buf = (char*)malloc(1921); //分配内存空间
while(!feof(fp)) //检测是否读到文件尾部
{
buf[i] = fgetc(fp); //获取内容
if (buf[i] == ','){
}else{
i++;
}
}
fclose(fp);
getchar();
}
参考代码如下:
#include <stdio.h>
#include <string.h>
void main()
{
int i = 0;
char *buf;
FILE *fp; //文件指针
fp = fopen("test.txt","r"); //以只读方式打开
buf = (char*)malloc(1921); //分配内存空间
while(!feof(fp)) //检测是否读到文件尾部
{
buf[i] = fgetc(fp); //获取内容
if (buf[i] == ','){
}else{
i++;
}
}
fclose(fp);
getchar();
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include <stdio.h>
int main(void)
{
FILE *fp;
char ch;
if((fp=fopen("temp.txt","rb")==NULL)
printf("File not find!");
while (!feof(fp)){
ch=fgetc(fp);
fputc(ch,fp);
}
fclose(f);
return 0;
}
只是不能显示中文。
int main(void)
{
FILE *fp;
char ch;
if((fp=fopen("temp.txt","rb")==NULL)
printf("File not find!");
while (!feof(fp)){
ch=fgetc(fp);
fputc(ch,fp);
}
fclose(f);
return 0;
}
只是不能显示中文。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询