C语言基础编程——文件

文件基本操作

  1. 打开文件

1.1 路径
1.1.1 相对路径: 相对文件下的路径
1.1.2 绝对路径(计算机的总path)
1.2打开方式
r:只读
w:只写 如果文件不存在:创建文件,如果存在:清空文件
a:追加 在原文件的末尾接着写
+:可读可写
b+:二进制
r+ w+ a+
rb+ wb+ ab+
rb wb ab

  1. 关闭文件

    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;
}

运行结果相同

【总结】

  1. 今晚又是被雀巢支配的一晚
    以前听谁说喝了雀巢就会困…看来是在装逼…
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值