文件I/O的操作实例

1_open.c:

#include <sys/types.h>
#include <stdio.h>
#include <sys/stat.h>
#include <fcntl.h>

int main(int argc,char *argv[])
{
    int fd;        //文件描述符

    /*以读的方式打开一个文件,如果文件不存在,则返回错误*/
    fd = open("test.txt",O_RDONLY);
    if(fd < 0){
        perror("open");
        return -1;
    }
    printf("fd == %d\n",fd);

    return 0;
}

2_open.c:

#include <sys/types.h>
#include <stdio.h>
#include <sys/stat.h>
#include <fcntl.h>

int main(int argc,char *argv[])
{
    int fd;        //文件描述符

    /*以读的方式打开一个文件,如果文件不存在,则创建它*/
    fd = open("test.txt",O_RDONLY | O_CREAT,0755);
    if(fd < 0){
        perror("open");
        return -1;
    }
    printf("fd == %d\n",fd);

    return 0;
}

3_read.c:

#include <sys/types.h>
#include <stdio.h>
#include <sys/stat.h>
#include <fcntl.h>

int main(int argc,char *argv[])
{
    int fd;        //文件描述符
    int ret;
    char buf[100] = {0};

    /*读取标准终端 : 0 (STDIN_FILENO)*/
    ret = read(0,buf,sizeof(buf)-1);
    if(ret > 0){
        /*读取成功*/

        /*打印到终端*/
        printf("%s\n",buf);
    }

    return 0;
}

4_read.c:

#include <sys/types.h>
#include <stdio.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <unistd.h>

int main(int argc,char *argv[])
{
    int fd;        //文件描述符
    int ret;
    char buf[100] = {0};

    /*打开一个文件,以读的方式*/
    fd = open("test.txt",O_RDONLY);
    if(fd < 0){
        perror("open test");
        return -1;
    }

    /*把文件指针移动到文件头*/
    lseek(fd,0,SEEK_SET);

    /*读取标准终端 : 0 (STDIN_FILENO)*/
    ret = read(fd,buf,sizeof(buf)-1);
    if(ret > 0){
        /*读取成功*/

        /*打印到终端*/
        printf("%s\n",buf);
    }

    return 0;
}

5_write.c:

#include <sys/types.h>
#include <stdio.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <unistd.h>

int main(int argc,char *argv[])
{
    int fd;        //文件描述符
    int ret;
    char buf[100] = {0};

    /*打开一个文件,以读的方式*/
    fd = open("test.txt",O_RDONLY);
    if(fd < 0){
        perror("open test");
        return -1;
    }

    /*把文件指针移动到文件头*/
    lseek(fd,0,SEEK_SET);

    /*读取标准终端 : 0 (STDIN_FILENO)*/
    ret = read(fd,buf,sizeof(buf)-1);
    if(ret > 0){
        /*读取成功*/

        /*打印到终端*/
        write(1,buf,ret);
    }

    return 0;
}

6_write_read.c:

#include <sys/types.h>
#include <stdio.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <unistd.h>

int main(int argc,char *argv[])
{
    int fdr;        //文件描述符
    int fdw;
    int ret;
    char buf[100] = {0};

    /*打开一个文件,以读的方式*/
    fdr = open("test.txt",O_RDONLY);
    if(fdr < 0){
        perror("open test");
        return -1;
    }

    /*打开一个文件dest.txt,用于写,如果文件不存在,则创建*/
    fdw = open("dest.txt",O_WRONLY | O_CREAT,0755);
    if(fdw < 0){
        perror("open dest");
        return -1;
    }

    /*把文件指针移动到文件头*/
    lseek(fdr,0,SEEK_SET);

    /*读取标准终端 : 0 (STDIN_FILENO)*/
    ret = read(fdr,buf,sizeof(buf)-1);
    if(ret > 0){
        /*读取成功*/

        /*写入到文件dest.txt*/
        write(fdw,buf,ret);
    }

    return 0;
}
时间: 2024-10-10 15:18:09

文件I/O的操作实例的相关文章

java 实现txt文件读取,写入操作实例代码。

一.需求:在txt文件中需要把建表语句的varchar(XXX)里面的XXX乘以4,然后在按照原来的格式进行输出. 需求如下: 转换后如下图: 实现代码如下: package commingming; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File; import java.io.FileReader; import java.io.FileWriter; public class

Java最全文件操作实例汇总

本文实例汇总了Java文件操作.分享给大家供大家参考,具体如下: 1.创建文件夹 ? 1 2 3 4 5 6 7 8 9 10 11 //import java.io.*; File myFolderPath = new File(%%1); try { if (!myFolderPath.exists()) { myFolderPath.mkdir(); } } catch (Exception e) { System.out.println("新建目录操作出错"); e.print

Python文件和目录操作实例代码

对于文件和目录的处理,虽然可以通过操作系统命令来完成,但是Python语言为了便于开发人员以编程的方式处理相关工作,提供了许多处理文件和目录的内置函数.重要的是,这些函数无论是在Unix.Windows还是Macintosh平台上,它们的使用方式是完全一致的. 本文将详细解释这些函数的使用方法.首先,介绍Python语言中类似于Windows系统的dir命令的列出文件功能,然后描述如何测试一个文件名对应的是一个标准文件.目录还是链接,以及提取文件大小和日期的方法.之后,还将介绍如何删除文件和目录

文件操作实例

1.文件操作之bytes模式 1.除了上篇所介绍的'r','w','a'只读只写只追加模式外,大家可能意识到一个问题就是这种操作只能对纯文本的文件进行操作,然而现在很多文件都是带有图片或者音频视频的文件,那该如何操作执行文件呢?接下来介绍文件操作其他三种类似模式 我们上面的'r','w','a'起始都是'rt','wt','at'即文本文件操作的只读只写只追加,要想操作文本文件以外的文件类型,那就需要在这个t的位置上做一些手脚了,对于非文本文件,我们只能使用b模式,"b"表示以字节的方

JAVA简单的文件I/O操作实例

如果只是对文件进行普通的读写,可以不用文件流. 以下是实例: File file = new File("test1.txt"); //向文件写入数据的 PrintWriter pw = new PrintWriter(file); //用法简单 pw.println("weizhibin"); pw.println("haha"); pw.println("ok!end!"); pw.close(); //一定要close

详解“FTP文件传输服务”安装配置实例

"FTP文件传输服务"安装配置实例 家住海边喜欢浪:zhang789.blog.51cto.com 目录 简介 ftp工作原理 常见的FTP服务 Vsftpd服务器的安装 Vsftpd.conf配置文件详解 配置FTP服务器实例 实例:配置匿名用户 实例:配置本地用户登录 实例:配置虚拟用户登录(MySQL认证) 实例:控制用户登录 实例:设置欢迎信息 分析vsftpd日志管理 FTP服务器配置与管理 简介 FTP 是File Transfer Protocol(文件传输协议)的英文简

CentOS 配置防火墙操作实例(启、停、开、闭端口)

CentOS 配置防火墙操作实例(启.停.开.闭端口): 注:防火墙的基本操作命令: 查询防火墙状态: [root@localhost ~]# service   iptables status<回车>   停止防火墙: [root@localhost ~]# service   iptables stop <回车>   启动防火墙: [root@localhost ~]# service   iptables start <回车>   重启防火墙: [root@loc

【读书笔记】C#高级编程 第二十四章 文件和注册表操作

(一)文件和注册表 对于文件系统操作,相关的类几乎都在System.IO名称空间中,而注册表操作由System.Win32名称空间中的类来处理. (二)管理文件系统 System.MarshalByRefObject--这是.NET类中用于远程操作的基对象类,它允许在应用程序域之间编组数据. FileSystemInfo--这是表示任何文件系统对象的基类. FileInfo和File--这些类表示文件系统上的文件. DirectoryInfo和Directory--这些类表示文件系统上的文件夹.

github linux 命令行操作实例

继续整理一下linux 下面使用命令行操作实例 首先创建文件目录 然后 执行 git clone 操作 [email protected]:~/桌面$ cd test/ [email protected]:~/桌面/test$ git clone https://github.com/timelessz/TESTDEMO.git正克隆到 'TESTDEMO'...remote: Counting objects: 3, done.remote: Total 3 (delta 0), reused