C语言中对文件最基本的读取和写入函数

yizhihongxing

在C语言中,对文件最基本的读取和写入函数是fopen、fread、fwrite和fclose函数,这些函数都在stdio.h头文件中声明。

打开文件函数fopen

打开文件函数fopen用于打开一个文件,它的基本语法是:

FILE *fopen(const char *filename, const char *mode);

其中,filename是文件的路径及文件名,可以是相对路径或绝对路径,mode是打开的方式。
mode有以下几种常用的方式:

  • "r":以只读方式打开文件,文件必须存在
  • "w":以写方式打开文件,如果文件存在,则文件被截断,如果文件不存在,则创建文件
  • "a":以追加写方式打开文件,如果文件存在,写操作从文件末尾开始;如果文件不存在,相当于"w"方式

示例代码1:打开一个文件以只读方式读取

#include <stdio.h>

int main()
{
    FILE *fp;
    char c;

    fp = fopen("file.txt", "r"); // 打开文件以只读方式读取
    if (fp == NULL)
    {
        printf("文件打开失败\n");
        return 1;
    }

    while ((c = fgetc(fp)) != EOF) // 每次从文件中读取一个字符,直到结尾
    {
        printf("%c", c); // 输出读取的字符
    }

    fclose(fp); // 关闭文件

    return 0;
}

读取文件函数fread

读取文件函数fread用于从文件中读取数据,它的基本语法是:

size_t fread(void *ptr, size_t size, size_t nmemb, FILE *stream);

其中,ptr是存储读取数据的缓冲区,size是每个元素的大小,nmemb是想要读取的元素的个数,stream是要读取的文件指针。
函数返回实际读取的元素个数,如果发生错误返回小于nmemb的数或0。
示例代码2:从文件中读取一段数据

#include <stdio.h>

int main()
{
    FILE *fp;
    int array[10];
    int i;

    fp = fopen("data.bin", "rb"); // 打开一个二进制文件以只读方式读取
    if (fp == NULL)
    {
        printf("文件打开失败\n");
        return 1;
    }

    fread(array, sizeof(int), 10, fp); // 从文件中读取10个整数到数组中

    for (i = 0; i < 10; i++)
    {
        printf("%d ", array[i]); // 输出读取的数据
    }

    fclose(fp); // 关闭文件

    return 0;
}

写入文件函数fwrite

写入文件函数fwrite用于向文件中写入数据,它的基本语法如下:

size_t fwrite(const void *ptr, size_t size, size_t nmemb, FILE *stream);

其中,ptr是存储要写入的数据的缓冲区,size是每个元素的大小,nmemb是想要写入的元素的个数,stream是要写入的文件指针。
函数返回实际写入的元素个数,如果发生错误返回小于nmemb的数或0。
示例代码3:向文件中写入一段数据

#include <stdio.h>

int main()
{
    FILE *fp;
    int array[10] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
    int i;

    fp = fopen("data.bin", "wb"); // 打开一个二进制文件以写方式写入
    if (fp == NULL)
    {
        printf("文件打开失败\n");
        return 1;
    }

    fwrite(array, sizeof(int), 10, fp); // 将数组中的数据写入文件中

    fclose(fp); // 关闭文件

    return 0;
}

关闭文件函数fclose

关闭文件函数fclose用于关闭文件指针,它的基本语法如下:

int fclose(FILE *stream);

其中,stream是要关闭的文件指针。
函数返回0表示成功,非0表示失败。

综上所述,对文件的基本读取和写入函数是fopen、fread、fwrite和fclose函数,它们可以完成C语言中对文件的基本操作。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C语言中对文件最基本的读取和写入函数 - Python技术站

(0)
上一篇 2023年6月13日
下一篇 2023年6月13日

相关文章

  • 分享Pandas库中的一些宝藏函数transform()

    下面是分享Pandas库中的tranform()函数完整攻略: 什么是transform()函数 在Pandas中,transform()函数可用于对DataFrame或Series中的每个元素进行转换和归纳操作。特别地,这个函数可以通过分组将每个分组中的每个元素变换成一个分组相关的值。通过使用transform()函数实现的转换操作返回的结果与原始数据结构…

    python 2023年5月14日
    00
  • Pandas 常用函数

    那么下面我来详细讲解Pandas常用函数的完整攻略,包含一些实例说明。 一、Pandas概述 Pandas是一个基于NumPy的Python数据分析库,可用于大量数据处理任务,例如合并、切片、筛选、聚合等数据处理。它具有以下优点: 提供了灵活的数据结构DataFrame和Series,方便数据操作; 可以高效地处理大型数据集; 可以自动对齐数据; 可以快速处…

    python-answer 2023年3月27日
    00
  • 在Python Pandas中执行类似Excel的counttifs操作

    在Python Pandas中执行类似Excel的countifs操作,可以使用groupby和agg函数来实现。 假设我们有一个包含以下内容的数据集: Name Age Gender City Alice 28 F Beijing Bob 30 M Shanghai Carol 25 F Beijing David 30 M Beijing Eve 25 …

    python-answer 2023年3月27日
    00
  • 如何选择Pandas数据框架的单列

    选择 Pandas 数据框架的单列需要考虑以下因素: 列名:选择具有代表性的列名,需要明确地表达自己的数据类型和内容,方便下一步的数据分析。 数据类型:考虑用哪种数据类型来储存数据,例如是否是数值型、字符型或日期型等,以及储存时是否需要进行缩减或更改数据类型。 数据格式:在进行数据分析的过程中,需要选择最合适的数据格式,例如字符串、数值或时间序列,以确保分析…

    python-answer 2023年3月27日
    00
  • 替换Pandas数据框架中的字符串中的字符

    要替换 Pandas 数据框架中字符串中的字符,可以使用 str.replace() 方法。下面是完整攻略及示例: 步骤 1:准备数据 首先,我们需要准备一些待处理的数据。这里我们使用一个包含两列的数据框架,其中一列包含了部分数据。 import pandas as pd data = { ‘A’: [‘foo’, ‘bar’, ‘baz’, ‘qux’, …

    python-answer 2023年3月27日
    00
  • 将嵌套的JSON结构转换为Pandas DataFrames

    将嵌套的JSON结构转换为Pandas DataFrame可以使用Pandas库中的json_normalize函数,以下是详细步骤: 导入 Pandas 库: import pandas as pd 使用 json_normalize 函数读取 json 数据,json_normalize 函数可以将嵌套的 json 结构转换为扁平的表格结构: df = …

    python-answer 2023年3月27日
    00
  • php数组合并array_merge()函数使用注意事项

    当我们需要将多个数组进行合并,PHP提供了一个非常方便的函数——array_merge()。下面就来详细讲解一下这个函数的使用注意事项。 函数说明 array_merge()函数用于将多个数组合并成一个数组,并返回合并后的结果数组。其语法如下: array array_merge ( array $array1 [, array $… ] ) 参数说明:…

    python 2023年5月14日
    00
  • 如何使用Merge连接Pandas数据框架

    当我们需要从不同来源的数据源中组合数据时,可以使用 Merge 函数将它们连接到一起。在 Pandas 中, Merge 函数提供了一种非常强大的方式来将不同的数据集组合到一个单一的 Pandas 数据框架中。 下面是一份详细的 Merge 函数的使用指南,包含步骤和示例。 步骤 导入 Pandas 库 在使用 Pandas 的 Merge 函数之前,需要先…

    python-answer 2023年3月27日
    00
合作推广
合作推广
分享本页
返回顶部