zoukankan      html  css  js  c++  java
  • [基础|理论|实验]linux下的文件读写

    1.在Linux平台下对文件编程可以使用两类函数:(1)Linux操作系统文件API;(2)C语言I/O库函数。 前者依赖于Linux系统调用,后者实际上与操作系统是独立的,因为在任何操作系统下,使用C语言I/O库函数操作文件的方法都是相同的。

    2.Linux文件API主要常用的有open,write,read,close,lseek,ioctl这几个函数。

     主要包含头文件有:

    1 #include <unistd.h>
    2 #include <fcntl.h>

     实例:

    编写一个程序,在当前目录下创建用户可读写文件“hello.txt”,在其中写入“Hello, software weekly”,关闭该文件。再次打开该文件,读取其中的内容并输出在屏幕上。
     1   #include <unistd.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  }
     
    作者:xiaoxia

    出处:http://cnblogs.com/xiaoxia

    本文遵从GNU 的自由文档许可证(Free Document License)的条款,欢迎转载、修改、散布。 

  • 相关阅读:
    HDU1883 Phone Cell
    HDU2297 Run
    关于反射的疑惑
    struts2+spring 实例教程
    在.Net 模板页中使用CSS样式
    到底是什么反射,泛型,委托,泛型
    asp.net如何实现删除文件夹及文件内容操作
    学好C#方法
    Web网页安全色谱
    总结一些ASP.NET常用代码
  • 原文地址:https://www.cnblogs.com/xiaoxia/p/2095455.html
Copyright © 2011-2022 走看看