文件I/O编程学习笔记二(c语言库函数访问文件)
来源:互联网 发布:公司活动软文 知乎 编辑:程序博客网 时间:2024/05/02 00:14
c语言库函数访问文件
库函数是独立于操作系统平台,可移植性强
文件的创建和打开
FILE *fopen(const char *filename,const char *mode)
filename:文件名
mode:打开模式
常见的打开方式:
r,rb 只读
w,wb 只写,如果文件不存在就创建
a,ab 追加,如果文件不存在就创建
r+,r+b,rb+ 读写方式打开
w+,w+b,wh+ 读写方式打开,文件不存在则创建
a+,a+b,ab+ 读和追加方式打开,文件不存在则创建
b表示二进制文件
读文件
size_t fread(void *ptr,size_t size,size_t n,FILE *stream)
stream:源文件
n:读取字段数
size: 每个字段的字节数
ptr:目标字符数组
返回实际读取的字节数
写文件
size_t fwrite(const void *ptr,size_t size,size_t n,FILE *stream)
ptr:源数组
n:字段数
size:字段的字节数
stream:目标文件
返回实际写入字段数
从文件读字符
int fgetc(FILE *stream)
向指定文件写入字符号
int fputc(int c,FILE *stream)
格式化读
int fscanf(FILE *stream,char *format[,argument...])
从一个流中进行格式化输入
示例代码如下:
#include <stdio.h>
#include <stdlib.h>
int main(void){
int i;
printf("input an integer:");
if(fscanf(stdin,"%d",&i)){
printf("the integer was:%i",i);
}
return 0;
}
格式化写入
int fprintf(FILE *stream,char *format[,argument,...])
格式化输出到一个流中
文件定位
int fseek(FILE *stream,long offset, int whence)
取得当前路径
char *getcwd(char *buffer,size_t size)
buffer:存放当前路径
size:指定buffer的大小
创建目录
int mkdir(char *dir,int mode)
库函数是独立于操作系统平台,可移植性强
文件的创建和打开
FILE *fopen(const char *filename,const char *mode)
filename:文件名
mode:打开模式
常见的打开方式:
r,rb 只读
w,wb 只写,如果文件不存在就创建
a,ab 追加,如果文件不存在就创建
r+,r+b,rb+ 读写方式打开
w+,w+b,wh+ 读写方式打开,文件不存在则创建
a+,a+b,ab+ 读和追加方式打开,文件不存在则创建
b表示二进制文件
读文件
size_t fread(void *ptr,size_t size,size_t n,FILE *stream)
stream:源文件
n:读取字段数
size: 每个字段的字节数
ptr:目标字符数组
返回实际读取的字节数
写文件
size_t fwrite(const void *ptr,size_t size,size_t n,FILE *stream)
ptr:源数组
n:字段数
size:字段的字节数
stream:目标文件
返回实际写入字段数
从文件读字符
int fgetc(FILE *stream)
向指定文件写入字符号
int fputc(int c,FILE *stream)
格式化读
int fscanf(FILE *stream,char *format[,argument...])
从一个流中进行格式化输入
示例代码如下:
#include <stdio.h>
#include <stdlib.h>
int main(void){
int i;
printf("input an integer:");
if(fscanf(stdin,"%d",&i)){
printf("the integer was:%i",i);
}
return 0;
}
格式化写入
int fprintf(FILE *stream,char *format[,argument,...])
格式化输出到一个流中
文件定位
int fseek(FILE *stream,long offset, int whence)
取得当前路径
char *getcwd(char *buffer,size_t size)
buffer:存放当前路径
size:指定buffer的大小
创建目录
int mkdir(char *dir,int mode)
- 文件I/O编程学习笔记二(c语言库函数访问文件)
- C语言学习笔记11- 文件I/O
- Linux&C语言文件学习笔记(三):文件I/O与系统API
- Linux&C语言文件学习笔记(四):文件I/O与系统API续
- UNIX环境编程学习笔记(7)——文件I/O之文件访问权限与进程访问控制
- UNIX环境高级编程(第三版)学习笔记(三、文件I/O之二)
- UNIX环境高级编程学习笔记(二)文件I/O常用函数
- C语言学习笔记之文件I/O(fgets()函数和fputs()函数)
- UNIX环境编程学习笔记(9)——文件I/O之文件访问权限的屏蔽和更改
- Java笔记二十.深入解析I/O编程之文件访问类
- Java I/O 学习笔记(5) 随机访问文件
- C语言文件读写标准I/O库函数的相关操作
- 文件I/O编程学习笔记一(基于linux系统的文件编程)
- Linux系统编程_2_文件I/O(系统调用&库函数)
- 090928日c语言学习日记(文件I/O)
- UNIX环境高级编程学习笔记(三)文件共享和其他文件I/O函数
- Linux 程序设计学习笔记----ANSI C 文件I/O管理
- UNIX环境编程学习笔记(5)——文件I/O之fcntl函数访问已打开文件的性质
- 2013,我来了
- poj 3278 bfs
- iOS ASIHTTPRequest详解
- 面向对象技术
- 【BZOJ1090 || SCOI2003】字符串折叠
- 文件I/O编程学习笔记二(c语言库函数访问文件)
- 磁盘IOPS和带宽(throughput)
- 回归ACm之路
- STM32下载方式
- html--给自己看的
- VC++6.0快捷键大全
- Xcode 每次断点都会进入汇编
- STL容器类vector,list,deque的比较
- VMware下,主机和虚拟机ping通IP设定问题 单向ping