Linux简单的文件读取

(1)linux中的文件描述符fd的合法范围是0或者一个正正数,不可能是一个负数。

(2)open返回的fd程序必须记录好,以后向这个文件的所有操作都要靠这个fd去对应这个文件,最后关闭文件时也需要fd去指定关闭这个文件。如果在我们关闭文件前fd丢掉了那就惨了,这个文件没法关闭了也没法读写了。

提醒:实时查man手册

(1)当我们写应用程序时,很多API原型都不可能记得,所以要实时查询,用man手册

(2)man 1 xx查linux shell命令,man 2 xxx查API, man 3 xxx查库函数

读取文件内容

(1)ssize_t read(int fd, void *buf, size_t count);

fd表示要读取哪个文件,fd一般由前面的open返回得到 buf是应用程序自己提供的一段内存缓冲区,用来存储读出的内容 ,count是我们要读取的字节数 返回值size_t类型是linux内核用typedef重定义的一个类型(其实就是int),返回值表示成功读取的字节数。

向文件中写入

(1)写入用write系统调用,write的原型和理解方法和read相似

(2)注意buf的指针类型为void

(3)刚才先写入12字节,然后读出结果读出是0(但是读出成功了)。

原文地址:https://www.cnblogs.com/MAPO/p/8472797.html

时间: 2024-08-30 13:33:01

Linux简单的文件读取的相关文章

Head First Python Chapter3:文件读取和异常处理

第三章中主要介绍了简单的文件读取和简单的异常处理操作. 首先建立文件目录:HeadFirstPython\chapter3,在Head First Pythong官方网站下载需要使用的文件:sketch.txt,并放入到之前建好的目录中. 相关语法 读取文件 the_file = open('sketch.txt) # 打开文件,获取到文件对象 # 对文件中的数据进行一些处理 the_file.close() # 关闭文件 异常捕获 import sys try: # 可能会出现异常的代码 f

Head First Python 学习笔记-Chapter3:文件读取和异常处理

第三章中主要介绍了简单的文件读取和简单的异常处理操作. 首先建立文件文件夹:HeadFirstPython\chapter3,在Head First Pythong官方站点下载须要使用的文件:sketch.txt,并放入到之前建好的文件夹中. 相关语法 读取文件 the_file = open('sketch.txt) # 打开文件,获取到文件对象 # 对文件里的数据进行一些处理 the_file.close() # 关闭文件 异常捕获 import sys try: # 可能会出现异常的代码

MATLAB中TXT数据文件读取并写入元胞数组的方法与步骤

一. TXT数据文件读取 Data = load('train.txt');   %简单的文件读取,这时在工作区可以看到导入的大数据变量Data 二.大数据变量Data装入元胞数组中 D = cell(5, 1);   %元胞的定义,定义一个5*1的元胞D D{1, 1} = rand(223, 26);   %初始化第1行第1列的元胞为223*26的一个数组,数组元素为随机值 D{1, 1} = Data(1: 1+222, 1: 1+25);  %将大数据变量的223*26的数值赋值(装入)

Linux的.run文件简单制作

run程序安装包实质上是一个安装脚本加要安装的程序,如下图所示:|-----------------|| || 安装脚本 || ||-----------------|| || 程序 || ||-----------------|图: run安装包的结构这样整个run安装包结构就一目了然了,实际上因为实际需要结构多少有点变动但这个无关紧要,只需要明白原理就行了.制作run安装包以下举个实际的例子:为了简单起见,要安装的程序就是helloworld程序,安装它的过程就是把它拷贝到/bin目录下.

SpringBoot读取Linux服务器某路径下文件\读取项目Resource下文件

// SpringBoot读取Linux服务器某路径下文件 public String messageToRouted() { File file = null; try { file = ResourceUtils.getFile("/home/admin/logs/test/routed.txt"); // 获取文件输入流 InputStream inputStream = new FileInputStream(file); List<String> fileList

windows 与linux 下用C++读取sqlite实现文件复制(三)

5.实现文件复制 1 int CopyFile(char *SourceFile,char *NewFile) 2 { 3 ifstream in; 4 ofstream out; 5 in.open(SourceFile,ios::binary);//打开源文件 6 if(in.fail())//打开源文件失败 7 { 8 cout<<"Error 1: Fail to open the source file."<<endl; 9 in.close(); 1

第八章、Linux 磁盘与文件系统管理

第八章.Linux 磁盘与文件系统管理 1. 认识 EXT2 文件系统 1.1 硬盘组成与分割的复习 1.2 文件系统特性: 索引式文件系统 1.3 Linux 的 EXT2 文件系统(inode): data block, inode table, superblock, dumpe2fs 1.4 与目录树的关系 1.5 EXT2/EXT3 文件的存取与日志式文件系统的功能 1.6 Linux 文件系统的运行 1.7 挂载点的意义 (mount point) 1.8 其他 Linux 支持的文

修改Linux下的文件以及文件夹的权限

如何在Linux中管理文件和文件夹的权限? 2014-02-12 10:58 布加迪编译 51CTO 字号:T | T Linux系统有严格的权限管理制度,操作者权限与文件权限不匹配时将无法对文件进行任何操作.对许多Linux用户来说,习惯于文件的权限和所有权可能有点难度.本文从命令行开始入手,教您在Linux中管理文件和文件夹权限的方法. AD:51CTO学院:IT精品课程在线看! [51CTO精选译文]对许多Linux用户来说,习惯于文件的权限和所有权可能有点难度.人们通常认为,想进入到这种

MPC8313ERDB在Linux从NAND FLASH读取UBoot环境变量的代码分析

[email protected] 一.故事起因 因为文件系统的增大,已经大大的超出了8MB的NOR FLASH,而不得不把内核,文件系统和设备树文件保存到NAND FLASH上.但是因为使用的是RAMDISK,而无法保存一些个别的配置和参数,最简单的需要就是设置系统的IP了,,, 要使用统一的RAMDISK,而实现LINUX启动之后,设置成不能的参数功能,比较方便的就是从UBOOT把这些参数传递过去,这个得到了大家的认证,我们可以直接添加启动参数,然后在内核里面读出来,这种方法比较方法,唯一不