标准C中规定了文件系统的访问和对文件本身的访问。不管是windows系统或者是泛unix系统,都实现了这些接口。在了解这些知识后,跨平台编程也将非常容易。

对文件系统的访问接口有:

  1. chdrive()     改变当前的工作驱动器。Ref
  2. getdrives()  获取可用磁盘驱动器掩码。Ref
  3. getdrive()   返回当前的磁盘驱动器,1代表A盘,2代表B盘,依次类推。Ref
  4. chdir()        改变工作目录,结果同shell的dir(windows)或者ls(unix)操作。Ref
  5. chmkdir()    创建目录,结果同shell的mkdir(windows)操作。
  6. chrd()         删除目录。
  7. chdrive()     改变磁盘驱动器。
  8. getcwd()     获取当前目录
  9. findfirst()    搜索与指定的文件名称匹配的第一个实例,若成功则返回第一个实例的句柄,否则返回-1L
  10. findnext()   搜索与_findfirst函数提供的文件名称匹配的下一个实例,若成功则返回0,否则返回-1
  11. fnsplit()      此函数将文件名path分解成盘符drive(C:、A:等),路径dir(\TC、\BC\LIB等),
  12. fumerge()   文件名name(TC、WPS等),扩展名ext(.EXE、.COM等)组成一个文件名

    对文件本身的访问接口有:

  1. ungetc()      写文件函数(将指定字符写回文件流中)
  2. setvbuf()     设置文件流的缓冲区
  3. setlinebuf()  设置文件流为线性缓冲区
  4. setbuffer()   设置文件流的缓冲区
  5. setbuf()       设置文件流的缓冲区
  6. rewind()       重设文件流的读写位置为文件开头
  7. putchar()     字符输出函数(将指定的字符写到标准输出设备)
  8. putc()          写文件函数(将一指定字符写入文件中)
  9. mktemp()     产生唯一临时文件名
  10. gets()          字符输入函数(由标准输入设备内读进一字符串)
  11. getchar()      字符输入函数(由标准输入设备内读进一字符)
  12. getc()          读文件函数(由文件中读取一个字符)
  13. fwrite()        写文件函数(将数据流写入文件中)
  14. ftell()           取得文件流的读取位置
  15. fseek()         移动文件流的读写位置
  16. freopen()     打开文件函数,并获得文件句柄
  17. fread()         读文件函数(从文件流读取数据)
  18. fputs()         写文件函数(将一指定的字符串写入文件内)
  19. fputc()         写文件函数(将一指定字符写入文件流中)
  20. fopen()        文件打开函数(结果为文件句柄)
  21. fileno()         获取文件流所使用的文件描述词
  22. fgets()         读取文件字符串
  23. fgetc()         读文件函数(由文件中读取一个字符)
  24. fflush()        更新缓冲区
  25. feof()          检查文件流是否读到了文件尾
  26. fdopen()      将文件描述词转为文件指针
  27. fclose()        关闭打开的文件
  28. clearerr()     清除文件流的错误旗标
  29. write()         写文件函数
  30. sync()         写文件函数(将缓冲区数据写回磁盘)
  31. read()         读文件函数(由已打开的文件读取数据)
  32. open()        打开文件函数
  33. mkstemp()  建立临时文件
  34. lseek()        移动文件的读写位置
  35. fsync()        将缓冲区数据写回磁盘
  36. flock()         解除锁定文件
  37. fcntl()         文件描述词操作函数
  38. dup2()        复制文件描述词
  39. dup()          复制文件描述词
  40. creat()         创建文件函数
  41. close()         关闭文件

另外可参考的网站有:

C语言整理——文件系统和文件访问的更多相关文章

  1. NodeJS静态文件访问性能测试

    受益于JavaScript语言优秀特点,使NodeJS开发服务端应用很方便,配合NPM官方提供的大量第三方组件,让NodeJS更加如虎添翼.最近,需要使用NodeJS做一个服务端HTML5的游戏服务器 ...

  2. [apue] linux 文件访问权限那些事儿

    前言 说到 linux 上的文件权限,其实我们在说两个实体,一是文件,二是进程.一个进程能不能访问一个文件,其实由三部分内容决定: 文件的所有者.所在的组: 文件对所有者.组用户.其它用户设置的权限访 ...

  3. Windows平台内核级文件访问

    1.背景     在windows平台下,应用程序通常使用API函数来进行文件访问,创建,打开,读写文件.从kernel32的CreateFile/ReadFile/WriteFile函数,到本地系统 ...

  4. Hadoop权威指南:HDFS-目录,查询文件系统,删除文件

    Hadoop权威指南:HDFS-目录,查询文件系统,删除文件 [TOC] 目录 FileSystem实例提供了创建目录的方法 public boolean mkdirs(Path f) throws ...

  5. Python Cookbook(第3版)中文版:15.19 从C语言中读取类文件对象

    15.19 从C语言中读取类文件对象¶ 问题¶ 你要写C扩展来读取来自任何Python类文件对象中的数据(比如普通文件.StringIO对象等). 解决方案¶ 要读取一个类文件对象的数据,你需要重复调 ...

  6. Python第五天 文件访问 for循环访问文件 while循环访问文件 字符串的startswith函数和split函数 linecache模块

    Python第五天   文件访问    for循环访问文件    while循环访问文件   字符串的startswith函数和split函数  linecache模块 目录 Pycharm使用技巧( ...

  7. 转://ASM与文件系统之间文件传输

    熟悉数据库运维的程序猿都知道,数据的备份重于一切,随着业务的发展,数据量也会越来越大,有时候备份集会放在文件系统上面,有的备份集会放在asm存储上面,实现文件系统到文件系统之间的文件传输很简单,cp或 ...

  8. python - 文件系统和文件

    文件系统和文件        文件系统是os用于明确磁盘或分区上的文件的方法和数据结构--即在磁盘上组织文件的方法        计算机文件,是存储在某种长期储存设备或临时存储设备中的一段数据流,并且 ...

  9. 背水一战 Windows 10 (92) - 文件系统: 读写“最近访问列表”和“未来访问列表”, 管理以及使用索引

    [源码下载] 背水一战 Windows 10 (92) - 文件系统: 读写“最近访问列表”和“未来访问列表”, 管理以及使用索引 作者:webabcd 介绍背水一战 Windows 10 之 文件系 ...

随机推荐

  1. encoding and Endian

    Unicode, Code Point is the value of evry character in Unicode table(int,long,ll) Unicode defines a c ...

  2. WINDOWS资源编译器出错信息

    ACCELERATORS语句的type域应包含ASCⅡ值或VIRTKEY值.        BEGIN expected in table        BEGIN关键字应紧跟在ACCELERATOR ...

  3. 【原创】Linux基础之测试域名IP端口连通性

    一 测试域名是否可达 1 ping # ping www.baidu.comPING www.a.shifen.com (220.181.112.244) 56(84) bytes of data.6 ...

  4. PHP针对数字的加密解密类,可直接使用

    <?phpnamespace app;/** * 加密解密类 * 该算法仅支持加密数字.比较适用于数据库中id字段的加密解密,以及根据数字显示url的加密. * @author 深秋的竹子 *  ...

  5. 洛谷P4707 重返现世 [DP,min-max容斥]

    传送门 前置知识 做这题前,您需要认识这个式子: \[ kthmax(S)=\sum_{\varnothing\neq T\subseteq S}{|T|-1\choose k-1} (-1)^{|T ...

  6. swift 学习- 24 -- 协议 01

    // 协议 定义了一个蓝图, 规定了用来实现某一特定任务或者功能的方法, 属性, 以及其他需要的东西. // 类, 结构体, 或 枚举都可以遵循协议, 并且为协议定义的这些要求 提供具体的实现, 某个 ...

  7. Swift 学习- 01 -- 基础部分

    print("世界,你好") var myVariable = 42 myVariable = 50 let myConstant = 42 let implicitinteger ...

  8. 通过设置ie的通过跨域访问数据源,来访问本地服务

    1.首先设置通过域访问数据源 设置通过域访问数据源 2.javascript脚本ajax使用本地服务登录(评价,人证的类似)接口 <html> <head> <scrip ...

  9. Confluence 6 安装一个语言组件

    Confluence 捆绑了一系列的语言包.这些语言包在 'Language Configuration'  界面中的语言选项中.在 Confluence 的管理员控制台,你可以选择 Choosing ...

  10. 继续JS之DOM对象二

    前面在JS之DOM中我们知道了属性操作,下面我们来了解一下节点操作.很重要!! 一.节点操作 创建节点:var ele_a = document.createElement('a');添加节点:ele ...