文件编程(库函数)听课笔记

1. 打开

FILE *fopen(const char *filename, const char *mode)

mode:
r, rb 只读
w, wb 只写,不存在则创建
a, ab 追加,不存在则创建
r+, r+b, rb+ 读写
w+, w+b, wh+ 读写,不存在则创建
a+, a+b, ab+ 追加,不存在则创建

b: 仅在DOS和Windows中区分文件文件和二进制文件

2. 读

size_t fread(void *ptr, size_t size, size_t n, FILE *stream)

从stream指向的文件中读取n个字段,每字段size个字节,放入ptr指向的缓存中
返回实际读取的字节数

读一个字符

int fgetc(FILE *stream)

例如:

#include <stdio.h>
main(){
FILE *fp;
char ch;
if((fp=fopen("cq.txt", "r"))==NULL){
printf("error");
exit(1);
}
ch=fgetc(fp);
while(ch!EOF){
putchar(ch);
ch=fgetc(fp);
}
fclose(fp);
}

3. 写

size_t fwrite(const void *ptr, size_t size, size_t n, FILE *stream)

从ptr指向的缓冲区读取n个字段,每字段size个字节,到stream所指向的文件中
返回实际写入的字段数

写一个字符

int fputc(int c, FILE *stream)


4.格式化读写

格式化读

int fscanf(FILE *stream, char *format [, argument...])

例如

if(fscanf(stdin, "%d", &i))


格式化写

int fprintf(FILE *stream, char *format [, argument...])


5.定位

int fseek(FILE *stream, long offset, int whence)

whence:
SEEK_SET 从文件开始
SEEK_CUR 从当前位置
SEEK_END 从文件结尾

6.获取路径

char *getcwd(char *buffer, size_t size)

将当前路径写到size大小的buffer中,如果buffer太小,返回-1

7. 创建目录

int mkdir(char *dir, int mode)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值