[基础|理论|实验]linux下的文件读写
1.在Linux平台下对文件编程可以使用两类函数:(1)Linux操作系统文件API;(2)C语言I/O库函数。 前者依赖于Linux系统调用,后者实际上与操作系统是独立的,因为在任何操作系统下,使用C语言I/O库函数操作文件的方法都是相同的。
2.Linux文件API主要常用的有open,write,read,close,lseek,ioctl这几个函数。
主要包含头文件有:
2 #include <fcntl.h>
实例:
2 #include <fcntl.h>
3 #include <stdio.h>
4
5 #define LENGTH 100
6 main()
7 {
8 int fd, len;
9 char str[LENGTH];
10 fd = open("hello.txt", O_CREAT | O_RDWR, S_IRUSR | S_IWUSR); /* 创建并打开文件 */
11 if (fd)
12 {
13 write(fd, "Hello, Software Weekly", sizeof("Hello, software weekly")-1); /* 写入 Hello, software weekly字符串,这里长度-1是因为sizeof把整个常量的所有大小,包括了\0,可以参考基础理论sizeof与strlen的区别,write与read不将\0代入缓冲区,*/
14 close(fd);
15 }
16 fd = open("hello.txt", O_RDWR);
17 len = read(fd, str, LENGTH); /* 读取文件内容 */
18 printf("%s\n", str);
19 close(fd);
20 }
转载于:https://www.cnblogs.com/xiaoxia/archive/2011/07/01/2095455.html
[基础|理论|实验]linux下的文件读写相关推荐
- Linux下的文件读写
一.系统调用 应用程序(打开文件)->各种库(标准库fopen)->系统调用(open)->内核(驱动)->硬件(磁盘). 系统调用:内核提供给外界访问的接口函数,调用这些函数 ...
- php——在linux下的文件读写权限问题
在 linux 系统中在创建 文件/文件夹 时有一个默认权限,此权限受 umask 设置影响,linux 系统中默认的 umask 为 022,与 777 & 运算之后,就变成了 755. 如 ...
- linux gcc编译下的文件读写操作
linux下的文件操作 所有目录 1.文件及文件系统的定义 2.linux文件的类型 3.linux文件的权限 ...
- Linux下利用文件描述符恢复的成功失败实验
数据误删除是作为初级运维人员常常遇到的"低级错误",一些有经验的老手有时也在疲劳.不冷静的情况下"马失前蹄".一旦误删除数据文件,尽快采用影响最小.最迅速的手段 ...
- linux下怎么批量命名文件,linux下的文件操作——批量重命名
概述:在日常工作中,我们经常需要对一批文件进行重命名操作,例如将所有的jpg文件改成bnp,将名字中的1改成one,等等.文本主要为你讲解如何实现这些操作 1.删除所有的 .bak 后缀: renam ...
- Linux下的文件类型、文件后缀名 知识点解析
文章目录 1.Linux文件的扩展名: 2.Linux 文件类型: 参考博客: https://blog.csdn.net/AQRSXIAO/article/details/82774729 人需要不 ...
- Linux入门基础教程之Linux下软件安装
Linux入门基础教程之Linux下软件安装 一.在线安装: sudo apt-get install 即可安装 如果在安装完后无法用Tab键补全命令,可以执行: source ~/.zshrc AP ...
- linux 访问文件软件,Linux下访问文件的基本模式
Linux下访问文件的基本模式 发表于:2013-10-09来源:IT博客大学习作者:edsionte点击数: 访问文件的操作主要是指读文件和写文件,下文简单说明内核中几种常见的访问文件的方式. 访问 ...
- linux 文件权限 rwt,Linux下修改文件权限(所有权)
Linux与Unix是多用户操作系统,所以文件的权限与所有权的实现就显得很有必要:每个文件主要与三组权限打交道,分别是用户(user),用户组(group),其他用户(other) 用户(u)是文件的 ...
最新文章
- python 读取grib \grib2
- python语法syntaxerror怎么修改-Python 语法错误
- 活动回顾 | 8月7日Apache Flink Meetup
- SpringBoot 配置Tomcat运行
- 文档源代码opencv 中的错误error: ‘SurfFeatureDetector’ was not declared in this scope
- 课时106.边框练习(理解)
- MyBatis collection的两种形式——MyBatis学习笔记之九
- mysql 8.0 手动安装教程_mysql 8.0.13手动安装教程
- Java异常持久化,Log4j进行日志的数据库持久化,说SQL语法异常。
- 一个箱子的梦想_长葛这中学“建”了一个“梦想厅”……
- MFC控件——ListCtrl控件[翻译](续)
- mysql8.0.13安装不_Windows环境下MySql8.0.13的安装及常见问题解决方案
- Pyhton爬取百度文库文字写入word文档
- 电工模拟接线软件 app_电气工程师手机必备APP
- python利用matplotlib库绘制三维图学习
- LinkedBlockingQueue多线程安全的保障 —————— 开开开山怪
- 自定义函数处理excel单元格列序数
- ubuntu20.04下载安装有道词典
- Shell 编程 ~ 从入门到入坑。
- HTML 常用转义字符
热门文章
- mysql中begin end中变量定义_DECLARE只能用于BEGIN…END的开头部分定义局部变量,其作用范围只能在该BEGIN…END中。_学小易找答案...
- 无头结点单链表的逆置_单链表的逆置(不带头结点)
- Go实现启动参数加载
- 了解下WSDL 绑定
- 来看看C# ObservableCollection和List的区别
- linux 支持7代cpu型号,win7最高支持几代cpu
- HDU2544(Dijstra算法)
- java swing中英文支持,java - Swing国际化 - 如何在运行时更新语言 - SO中文参考 - www.soinside.com...
- gb2312转utf-8linux,linux GB2312转UTF-8 shell脚本
- Educational Codeforces Round 114 (Rated for Div. 2) (A ~ F)全题解