文件基本操作
- 打开文件
1.1 路径
1.1.1 相对路径: 相对文件下的路径
1.1.2 绝对路径(计算机的总path)
1.2打开方式
r:只读
w:只写 如果文件不存在:创建文件,如果存在:清空文件
a:追加 在原文件的末尾接着写
+:可读可写
b+:二进制
r+ w+ a+
rb+ wb+ ab+
rb wb ab
-
关闭文件
fclose(文件指针);
#include<stdio.h>
#include<stdlib.h>
int main()
{
system("color 7D");
//1.要起一个名字在程序中表示文件
//文件指针表示 ,FILE *名字
FILE *MM;///要初始化,不初始化就要赋值
//2.把名字分配给相应的文件
//fopen("路径",读写方式);
//注意错误:若该路径内不存在相应txt文件,r的方式不具有创建功能
MM=fopen("girl.txt","r");
//防御性编程
if(MM==NULL)//如果没有改文件,w用创建的方式打开一个文件
{
MM=fopen("girl.txt","w+");
}
fclose(MM);
printf("hello world!\n");
system("pause");
return 0;
}
读写方式
(比较无规律的数据)
1.以字符的方式
fgetc(); 读,获取
fputc(); 打印到文件上,两个参数:要打印的内容,文件指针
2.以字符串方式读写
fgets();三个参数:要读入的地方,存储字符串的容量,文件指针
fputs();打印到文件上,两个参数:要打印的内容,文件指针
(结构化数据,结构体数据)
3.格式化读写——>表格数据读写
4.以字节流形式读写
1.以字符方式读写文件
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
int main()
{
system("color 7D");
int i;
FILE *write=fopen("girl.txt","w+");
char str[]="i love you,and you love me!";
//所有的文件操作函数,都包括文件移动指针,写一个,自动往后移一位
//文件写进去
for(i=0;i<strlen(str);i++)
{
fputc(str[i],write);//把字符串打印到文件里面去,【两个参数】
}
fclose(write);//文件有打开就有关闭,不关闭会出问题
//文件读出来,放入buf中,打印到屏幕上
//char buf[1024]="";//初始化为空
FILE *read=fopen("girl.txt","r");//创建一个文件指针,并赋值到该文件,以只读方式打开
int ch=fgetc(read);//每次只读一个字符,从文件指针所指向的文件获取第一个字符(读第一个作为初始化)
//文件末尾标记:EOF
while(ch!=EOF)//
{
putchar(ch);//putchar()把字符打印到屏幕上面
ch=fgetc(read);//不断的读?
}
printf("\n");
fclose(read);//有开有关
system("pause");
return 0;
}
运行结果:
写入文件中:
从文件中读出,打印到屏幕上
2.以字符串方式读写文件
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
int main()
{
system("color 7D");
int i;
FILE *write=fopen("girl.txt","w+");
char str[]="i love you,and you love me!";
//所有的文件操作函数,都包括文件移动指针,写一个,自动往后移一位
//文件写进去
fputs(str,write);//以字符串的方式写入文件中
fclose(write);//文件有打开就有关闭,不关闭会出问题
//文件读出来,放入buf中,打印到屏幕上
FILE *read=fopen("girl.txt","r");//创建一个文件指针,并赋值到该文件,以只读方式打开
char buff[1024]="";//初始化为空
fgets(buff,1024,read);//三个参数:要读入的地方,存储字符串的容量,文件指针
puts(buff);//把字符串打印在屏幕上
printf("\n");
fclose(read);//有开有关
system("pause");
return 0;
}
运行结果相同
【总结】
- 今晚又是被雀巢支配的一晚
以前听谁说喝了雀巢就会困…看来是在装逼…