文件操作

Posted jianze

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了文件操作相关的知识,希望对你有一定的参考价值。

一、打开文件

1.格式:

fopen(<#const char *restrict __filename#>, <#const char *restrict __mode#>);

fopen("/Users/apple/Desktop/test.txt", "a+");

第一个参数表示数据源,第二个表示方式

r 必须打开一个存在的文件  如果文件不存在直接失败 从头开始读

 w 如果存在 直接打开 如果不存在 直接创建 从头写 覆盖前面的数据

 a 和w一样  唯一的区别是从末尾写(不覆盖前面的数据)

r+ w+ a+表示读和写

2、代码

FILE *fp = fopen("/Users/apple/Desktop/test.txt", "a+");

 

二、写入文件

1、格式

fwrite(<#const void *restrict __ptr#>, <#size_t __size#>, <#size_t __nitems#>, <#FILE *restrict __stream#>);

ptr: 要写入的数据源

 size: 每一个数据占据的内存空间

 nitems:写多少个数据

 stream:写到哪里去

2、代码

1 char *word = "jack";
2 fwrite(word, sizeof(char), 3, fp);

 

三、读取文件

1、格式

fread(<#void *restrict __ptr#>, <#size_t __size#>, <#size_t __nitems#>, <#FILE *restrict __stream#>);

2、代码

1 fseek(fp, 0, SEEK_SET);
2 char temp[10] = {};
3 fread(temp, sizeof(char), 3, fp);

注意:用fseek将读取位置定位,中间参数0表示从第0个位置开始读

 

四、关闭文件

fclose(fp);

 

五、简单demo

 1 #include <stdio.h>
 2 
 3 int main(int argc, const char * argv[]) {
 4     
 5     //打开文件(如果没有则创建)
 6     FILE *fp = fopen("/Users/apple/Desktop/test.txt", "a+");
 7     
 8     //写数据
 9     char *word = "jack";
10     fwrite(word, sizeof(char), 3, fp);
11     
12     //读数据
13     fseek(fp, 0, SEEK_SET);
14     char temp[10] = {};
15     fread(temp, sizeof(char), 3, fp);
16     
17     printf("%s", temp);
18     fclose(fp);
19     
20     return 0;
21 }

 

以上是关于文件操作的主要内容,如果未能解决你的问题,请参考以下文章

VSCode自定义代码片段15——git命令操作一个完整流程

VSCode 如何操作用户自定义代码片段(快捷键)

代码片段 - Golang 实现集合操作

Apollo Codegen 没有找到生成代码的操作或片段

VSCode自定义代码片段——.vue文件的模板

操作栏标签片段中的片段?