文件的创建、关闭及相关指令
#include "stdafx.h"
int _tmain(int argc, _TCHAR* argv[])
{
#if 0
----打开文件
FILE * fopen ( const char * filename, const char * mode );
filename 为所要打开文件的地址 mode 为要对此文件进行的操作指令
//绝对路径 C:\Users\cplusplus\Desktop\aa.txt
FILE * fp = fopen("C:/Users/cplusplus/Desktop/aa.txt", "r");
//用绝对路径时注意\要换成/(可跨平台)或者\\避免进行转义
fp所指向的是一个FILE类型的结构体,结构体中存放着缓冲区中(文件)的相关信息
缓冲区的文件内容 是从内存中流入
如果读写的是二进制文件,windows系统则还要加b,比如 rb, r+b 等。
不加b写入\n:实际是写入\r\n ,unix/linux 不区分文本和二进制文件
----关闭文件 int fclose ( FILE * stream );
//成功返回0,失败返回 EOF(-1)
----r指令
//r(或者r+)指令只能读现有文件,若不存在,则报错
FILE* fp = fopen("xx.txt", "r");
if (NULL == fp)
{
printf("open error\n");
return -1;
}
----w指令
//w(或者w+)指令:若不存在相应文件,则创建,若存在则清空文件里的内容
FILE* fp = fopen("yy.txt", "w");
if (NULL == fp)
{
printf("open error\n");
return -1;
}
----+指令
r+ 除原有读操作 格外提供写的操作
w+ 除原有写操作 格外提供读的操作
a+ 除原有追加操作 格外提供读的操作
#endif
//----a指令
//a(或者a+)指令:若不存在相应文件,则创建,若存在也不会清空内容
FILE* fp = fopen("gg.txt", "a");
if (NULL == fp)
{
printf("open error\n");
return -1;
}
fclose(fp); //为了刷缓冲(让之前写的东西显示出来)
//printf中打印的\n也可以刷缓存
return 0;
}