linux_c 网络开发日记(3)库函数访问文件
2015-07-28 23:14
323 查看
库函数访问文件
c库函数的文件操作是独立于具体的操作系统平台上的,不管是DOS,windows、还是linux 还是在vxwork 中都是这些函数。(用库函数访问文件,可移植性高库函数-创建和打开
FILE *fopen(const cahr*filename,const cahr*mode)filename:打开的文件名(包含路径,缺省为当前路径)
mode:打开模式
常见打开模式
r,rb:只读方式打开
w,wb:只写方式打开,如果不存在,则创建该文件
a,ab:追加方式打开,如果
r+,r+b, rb+:读写方式打开
w+,w+b,wh+:读写方式打开如不过不存在则创建该文件
a+,a+b,ab+:读写和追加的方式打开,如果不存在,则创建该文件
b用于区分二进制文件和文本文件,linux系统不区分二进制文件和文本文件。DOS,和windows有区分。
库函数-读
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个字段写到stream指向的文件中,每个字长为size个字节,返回实际写入的字段数。
int fgetc(FILE *stream):从指定文件读取一个字符
int fputc(int c,FILE*stream):向指定文件写一个字符
fscanf(FILE *stream,char *format[argument...]):从一个流中进行格式化输入
int fprintf(FILE *stream,char* format[argument]):格式化输出到一个流中。
库函数-定位
int fseek(FILE *stream,long offset,int whencewhence:
SEEK_SET:从头搜索
SEEK_CUR:当前位置搜索
SEEK_END:结尾处开始搜素
路径获取:
char *getcwd(cahr *buffer,size_t size)我们提供一个size大小的buffer,getcwd会把当前的路径名copy到buffer中,如果buffer太小,函数会返回-1.
eg:
#include<stdio.h>
main()
{
char buf[80];
getcwd(buf,sizeof(buf));
printf("current working directory:%s/n",buf);
}
创建目录
#include<sys/stat.h>int mkdir(char *dir,int mode)
功能:创建一个新目录
返回值:0表示成功,-1表示出错
相关文章推荐
- 一些windows下调试网络的命令行
- 一些windows下调试网络的命令行
- Vmware虚拟网络详解
- Android核心基础-7.Android 网络通信-1.获取文本数据
- Apache配置文件详解之httpd.conf(2)
- HTTP协议常见问题
- http详解--------TCP/IP
- Volley学习笔记(二):使用Volley加载网络图片
- [tcpip] 准备工作
- CC3200使用官方的Http cli连接服务器
- http详解(一)-------web的基础
- 标签切换时从网络加载数据
- HTTP请求缓存配置及原理
- 汇文嵌入式学习之TCP和UDP基础理解
- 【暑假】[网络流]网络流知识总结
- 此地址使用了一个通常用于网络浏览以外的端口。出于安全原因,Firefox 取消了该请求。
- mysql_use_result和mysql_store_result http://blog.163.com/zhou_li12/blog/static/184980311201310261
- 几种java通信(rmi,http,hessian,webservice)协议性能比较
- 解决Win7旗舰版开机后无线网络识别非常慢的问题
- 神经网络及BP网络matlab+C#实现