系统城装机大师 - 固镇县祥瑞电脑科技销售部宣传站!

当前位置:首页 > 系统教程 > 其它教程 > 详细页面

1.linux中的文件操作

时间:2020-02-14来源:系统城作者:电脑系统城

1.linux中的文件操作

1. Windows中的文件操作

  1. 在windows中,我们操作一个文件会存在以下的情况

    1.1 首先我们会明确我们要操作的文件所在的目录或路径
    1.2 进入相应的路径中, 操作特定文件时先会检查文件是否存在
    1.3 文件不存在时,创建文件
    1.4 文件存在时,可以打开文件进行相应的操作
    1.5 文件操作完成后,关闭文件

2. linux中的文件操作又如何呢?

  1. linux中的文件操作和windows系统中有哪些相同点及区别呢?

    1.1 操作的方式和上面的windows是一样的
    1.2 linux中文件操作需要注意点:

    1. 基本的操作函数(open, close, read, write, lseek)
    2. 文件以何种方式打开(只读,只写,可读可写)
    3. 当需要打开一个文件进行写操作时,如果此文件中有内容存在,那么写入的内容是以追加的方式还是覆盖的方式写入呢?这就涉及到了O_APPEND和O_TRUNC
    4. 当要操作的文件不存在时,如何创建?或者当操作的文件存在时,是否能够判断文件存在?这就涉及到O_CREAT(无论文件是否存在都创建一个文件)及O_EXECL(当需要创建文件时,如果文件存在就报错)
    5. 文件在操作时如果出错,如何退出当前进程?使用exit, _exit, _Exit都可以实现退出当前进程.
    6. 还有两个flags, O_NONBLOCK及O_SYNC,

      6.1 O_NONBLOCK用于设备文件的非阻塞式访问(当有过个程序需要访问设备时,如果当前设备被一个程序调用,则其它程序进入非阻塞方式访问)
      6.2 O_SYNC,由于linux操作系统提供的文件操作的API给应用程序调用对文件进行读写,但不是应用程序每写入一个字节或者少量字符就直接写入到块设备硬件中的(iNand,SD卡),而是在close文件描述符时才写入到硬件储存设备中的. 如果在write的flag中加入O_SYNC就可以直接写入硬件中.

3. linux中文件读取时,除了读取了全部内容外,还会多读取一个'\n'

1.linux中的文件操作

4. linux中对文件进行写操作时,如果在打开文件时使用O_TRUNC,则会将文件中的内容全部清空后,再写入内容;如果在打开文件时使用了O_APPEND, 则会将写入的内容追加到原有内容的后面(注意:是先换行后再追加新的内容)

5. linux中在打开文件写入内容后且在文件关闭前,调用read函数去读取写入内容后的文件,发现读出的内容和写入的内容不匹配,参考以下链接内容

解决linux下写一个文件之后立马读,读出乱码或者空白的问题

分享到:

相关信息

  • ThinkPad蓝牙鼠标如何配对

    ThinkPad蓝牙鼠标如何配对解答步骤41U5008鼠标驱动官网地址: https://support.lenovo.com/en_US/downloads/detail.page?&LegacyDocID=MIGR-67201 第一种方式是比较传统的:使...

    2024-04-11

  • USB接口无法识别设备的解决方法

    故障现象: USB设备U盘、移动硬盘等插入后提示无法识别的设备,确认设备本身正常,设备可加电,或插入设备后加电但无任何反应,无法使用。新型号机器多表现为黄色USB接口存在此问题,...

    2024-04-11

系统教程栏目

栏目热门教程

人气教程排行

站长推荐

热门系统下载