标准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. [SCOI2014]方伯伯的OJ

    看到这道题的第一想法就是要用FHQ treap 过了这道题...于是至今尚未成功(华丽的 T 掉了 (╯‵□′)╯︵┻━┻ ).于是附个地址. 然后水一波博客. 题意简介 emmmm...方伯伯脑抽做 ...

  2. Mudo C++网络库第十一章学习笔记

    反思C++面向对象与虚函数 C++语言学习可以看<C++ Primer>这本书; 在C++中进行面向对象编程会遇到其他语言中不存在的问题, 其本质原因是C++ class是值语义, 而非对 ...

  3. MinGW GCC 7.1.0 2017年6月份出炉啦

    MSYS_MinGW-w64_GCC_710_x86-x64_Full.7z 发布日期: 2017-06-03 18:33 69.4M 下载地址: http://xhmikosr.1f0.de/too ...

  4. 微信小程序弹出层点击穿透问题

    问题描述:使用小程序的modal组件实现遮罩层效果时,会出现滚动穿透的问题,即遮罩层后面的页面依旧可以滚动. 解决方案: 给底层页面动态添加 position:fixed; 代码: wxml: < ...

  5. Vue 核心之数据劫持

    前端界空前繁荣,各种框架横空出世,包括各类mvvm框架横行霸道,比如Angular.Regular.Vue.React等等,它们最大的优点就是可以实现数据绑定,再也不需要手动进行DOM操作了,它们实现 ...

  6. mysql管理工具percona-toolkit-3简单使用介绍

    安装percona-toolkit-3 # -.el6.x86_64.rpm :.el6 -y 1.pt-summary #显示和系统相关的基本信息: [root@master ~]# pt-summ ...

  7. UVA 1395 MST

    给你一个图, 求一个生成树, 边权Max – Min 要最小,输出最小值, 不能构成生成树的 输出 -1: 思路: Keuksal 算法, 先排序边, 然后枚举 第一条边, 往后加入边, 直到有 n- ...

  8. Linux系统基础优化及常用命令

    Linux基础系统优化 引言没有,只有一张图. Linux的网络功能相当强悍,一时之间我们无法了解所有的网络命令,在配置服务器基础环境时,先了解下网络参数设定命令. ifconfig 查询.设置网卡和 ...

  9. 前端 ----jQuery的动画效果

    03-jQuery动画效果   jQuery提供的一组网页中常见的动画效果,这些动画是标准的.有规律的效果:同时还提供给我们了自定义动画的功能. 显示动画 方式一: $("div" ...

  10. 'mysql' 不是内部或外部命令,也不是可运行的程序或批处理文件

    今天安装完MYSQL8.0的版本,根据课本的提示,在CMD里运行,出现了'mysql' 不是内部或外部命令,也不是可运行的程序或批处理文件.在网上搜了一下,他的解决方法是这样的: 1.设置一下环境变量 ...