首页 > 系统相关 >Linux文件编程(持续更新)

Linux文件编程(持续更新)

时间:2024-11-27 23:59:24浏览次数:9  
标签:文件 file1 读取 编程 写入 更新 描述符 fd Linux

Linux系统提供了一系列自动化完成文件编程的API,如:

打开 open

读写 write/read

光标定位 lseek

关闭 close

———————————————————————————————————————————

O_EXCL(图片里不是出错而是返回值是-1,与O_CREAT配合使用)

mode = 0600(第一个0无意义,第二个数代表本用户权限,6代表4+2可读可写,第三个数代表同组用户权限,第四个数代表其他组用户权限)ls -l(列出当前用户对各文件的权限)(可读(r,4)、可写(w,2)、执行(x,1))

open函数返回一个文件描述符,下一次调用这个文件也要用到这个文件描述符(为-1就是打开失败) 

例:可读可写打开文件file1并把文件描述符赋值给fd,打印fd

例:可读可写打开文件file1,如果打不开就创建file1,并把文件描述符赋值给fd,打印fd

———————————————————————————————————————————

 write返回值是写入大小,写入失败返回-1(头文件unistd.h)

close(fd) 关闭fd文件描述符的文件(头文件unistd.h)

buf是写入内容的指针(可以用char *buf  = "1234"),count是写入内容的大小(可以用strlen(buf))//strlen在string.h中

例:在file1中写入Cykaw2590

———————————————————————————————————————————

buf是读取放在的地址,count是读取的大小,读取成功返回读取字节数,读取失败放回-1

例:

———————————————————————————————————————————

 lseek返回值是当前光标位置离文件开头的偏移值

例:光标移到文件开头偏移一个字节并输出读取到的内容(正为往右,负为往左)

标签:文件,file1,读取,编程,写入,更新,描述符,fd,Linux
From: https://blog.csdn.net/cykaw2590/article/details/144038406

相关文章

  • 【编程小技巧】
    输出内容覆盖原有的内容\r表示回车符,会将光标移至开始位置,同时使用非换行形式的printpublicclassMain{publicstaticvoidmain(String[]args){Randomr=newRandom();String[]all=newString[10];for(inti=0;i<=100;i++){......
  • 编程之路,从0开始:预处理详解(完结篇)
            Hello大家好!很高兴我们又见面啦!给生活添点passion,开始今天的编程之路!我的博客:<但凡.我的专栏:编程之路        这一篇预处理详解是我们C语言基础内容学习的最后一篇,也是我们的专栏:编程之路的最后一篇!从今日起,我将不定期更新新的内容,开始新的章节......
  • 设计模式--原型模式及其编程思想
    原型模式(PrototypePattern)原型模式的核心思想是通过复制(克隆)现有对象来创建新对象。原型模式通常涉及两个角色:原型对象和具体原型对象。原型对象是需要被复制的对象,而具体原型对象是实现了克隆方法的原型对象。在Java中,原型模式通常通过实现Cloneable接口和重写clone()方法来......
  • RK3568平台开发系列讲解(Input子系统篇)输入设备应用编程
    ......
  • Linux网络编程——epoll原理详解及epoll反应堆模型
     设想一个场景:有100万用户同时与一个进程保持着TCP连接,而每一时刻只有几十个或几百个TCP连接是活跃的(接收TCP包),也就是说在每一时刻进程只需要处理这100万连接中的一小部分连接。那么,如何才能高效的处理这种场景呢?进程是否在每次询问操作系统收集有事件发生的TCP连接时,把这10......
  • 【Pip】pip更新版本超详细教程,升级不成功问题,pip常用命令
    一、pip更新问题:输入piplist,显示我的pip版本是22.2.2,要升级到最新版本-----以下分享的是我解决pip更新遇到的问题、成功的步骤,大家可以从第一个命令尝试,如果第一步就成功了就不需要看失败的经验了-----第一次尝试。输入python-mpipinstall--upgradepip升级失......
  • linux高级系统编程之系统调用
    函数分类库函数    系统提供的,不能直接访问内核的,如printf,fopen等系统调用    系统提供的,可以直接访问内核的,如open,close等自定义函数    自己编写的注意:    man命令查看帮助手册    章节1    查命令  ......
  • [笔记](更新中)最短路问题的变形
    求\(s\)到\(t\)必须经过某个点/某条边的最短路这个相当板子了,点\(u\)的答案是\(dis(s,u)+dis(u,t)\),边\(e=(u,v)\)的答案是\(\min(dis(s,u)+dis(v,t),dis(s,v)+dis(u,t))+w(e)\)。其中\(dis(u,v)\)表示\(u\)到\(v\)的最短路。从\(s\)和\(t\)各跑一次Dijkstra,其中\(t\)用反图。预......
  • 【高性能编程】SIMD类型指令基本概念与使用示例
    一、SIMD基本概念SIMD指令即单指令多数据流(SingleInstructionMultipleData)指令,是一种能够在同一时间同步执行同一条指令,以对多个数据元素进行并行处理的技术,以下是具体介绍:原理传统的单指令单数据(SISD)架构中,CPU需要分别访问内存以获取操作数,然后逐个进行运算。而SIM......
  • CH592/CH585工具更新说明_USB篇
    ①打开USB更新工具 ②保证芯片没有供电以及没有GPIO灌电的前提下,将PB22接到低电平GND上(进入BootLoader),再插入USB线供电,之后点击软件中的SearchDevice即可搜索到设备 ③点击Download下载程序即可 ④烧录成功样例 ......