文件操作的几种方式

1)使用C语言中的文件操作:

写文件

FILE *p=fopen("1.txt","r");//文件名为1.txt,打开的方式为只读;

fwrite("welcome to the file system",1,strlen("welcome to the file system"),p);//往文件中写数据,这里使用fwrite函数,将一个字符窜

Fclose(p);//这个函数的调用,只是将要写入的内容放入缓冲区中,只有当工程关闭的时候,缓冲区的内容才被写入文件

Fflush(p)//这个函数,每当执行一次fwrite操作都会将缓冲区的内容及时写入文件中,这样就不需要关闭工程就能看到文件中的内容!

读文件;

 FILE *p=fopen("1.txt","r");//打开一个文件,以只读的方式打开

char ch[100];//定义一个数组,接收从文件中读取的内容

// memset(ch,0,100);//初始化数组

// fread(ch,1,100,pFile);//读取文件中的内容到字符数组中

  char *pBuf;//用指针的形式

  fseek(p,0,SEEK_END);//首先将文件指针移动到文件的末尾的位置

  int len=ftell(p);//这个时候,p的位置就是该文件的占有的总的字节数

  pBuf=new char[len+1];//根据文件的大小,分配缓冲区的大小

  fseek(p,0,SEEK_SET);//将文件指针移动到文件的开始位置,

  fread(pBuf,1,len,p);//开始读取

  pBuf[len]=0;//由于字符数组的结尾标志是’\0’,实际上就是十进制的0

  Fclose(p);

  MessageBox(pBuf);//消息输出

2)使用c++的输入输出流进行操作;

写文件:  

 ofstream out("2.txt");//构造一个输出流对象,并初始化(建立一个文件)

out.write("i am the student",strlen("i am the student"));像文件中写入数据

out.close();//关闭文件

读文件:

	ifstream in("2.txt");构造一个输入流对象

char ch[100];

memset(ch,0,100);

in.read(ch,100);//读取文件内容到缓冲区中

in.close();//关闭

MessageBox(ch);//显示消息

3)使用CFile类进行操作;

写入文件

HANDLE hfile;//文件句柄

hfile=CreateFile("3.txt",GENERIC_WRITE |GENERIC_READ,0,NULL,CREATE_NEW,FILE_ATTRIBUTE_NORMAL,NULL);创建一个文件,各个参数的含义,可以查阅文档

DWORD dwWrite;实际的输出的字节数

WriteFile(hfile,"i am a student",strlen("i am a student"),&dwWrite,NULL);

CloseHandle(hfile);//销毁文件句柄

读取文件:基本上和写入文件类似

	HANDLE hfile;

hfile=CreateFile("3.txt",GENERIC_READ,0,NULL,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL

,NULL);

char st[100];

    DWORD dword;

memset(st,0,100);

ReadFile(hfile,st,100,&dword,NULL);

CloseHandle(hfile);

MessageBox(st);
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值