在c语言中,如何读取一个txt文件中的信息

来源:百度知道 编辑:UC知道 时间:2024/05/16 16:10:49
在c语言中,如何读取一个txt文件中的信息:
要求是读取文件中的所有内容(里面包括中文及英文字符),然后把它保存到数组里面,这个数据会很大,有上千行的数据.

顺便问下,当我对这些数据处理后,又怎样输出到另外一个txt中呐

谢谢了
文件里面的内容大概是:"
aaaaa汉字aaa
aaaaaaaaa
汉字汉字汉字
"类似这样的,我想把所有数据都放到数组里

是纯c语言,老师上课教的糊里糊涂,我也学的糊里糊涂,现在又想学了,所以有些还是不懂
还有问题."每遇到\n就开一个新数组",这个怎么实现?
还有,如果是上万条的数据,开那么多数组,没事吧!
fo是这些数据的首指针吧?

  一般来说在C语言中读取txt文件的信息有两种方法,一种是使用C语言标准文件I/O中的fopen()、fread()等等函数,一种是调用操作系统中的API函数,比如Windows上的ReadFile()、OpenFile()等等,现在操作系统一般都具备内存文件映射功能,对于大的txt文件,一般都使用这种方式操作。下面是一个使用C语言标准文件I/O操作文件的例子。

#include<stdio.h>

FILE*stream;

void main(void)
{
long l;
float fp;
char s[81];
char c;
 
stream=fopen("fscanf.out","w+");
if(stream==NULL)
printf("Thefilefscanf.outwasnotopened\n");
else
{
fprintf(stream,"%s%ld%f%c","hello world",  
65000,3.14159,'x');

/*Setpointertobeginningoffile:*/
fseek(stream,0L,SEEK_SET);

/*Readdatabackfromfile:*/
fscanf(stream,"%s",s);
fscanf(stream,"%ld",&l);

fscanf(stream,"%f",&fp);
fscanf(stream,"%c",&c);

/*Outputdataread:*/
printf("