📌  相关文章
📜  从终端打开文件 - C 编程语言(1)

📅  最后修改于: 2023-12-03 15:06:37.711000             🧑  作者: Mango

从终端打开文件 - C 编程语言

在 C 编程语言中,我们可以通过从终端打开文件进行输入输出操作。在本文中,我们将讨论如何使用 C 语言打开、读取和写入文件。

打开文件

在 C 中打开文件需要使用标准库函数 fopen()。该函数需要两个参数,第一个参数是要打开的文件路径,第二个参数是打开文件的模式。

以下是打开文件的不同模式:

  • "r": 以只读方式打开文件。
  • "w": 以写入方式打开文件。如果文件已经存在,则文件内容将被清除。
  • "a": 以追加方式打开文件。如果文件已经存在,则新的内容将被写入文件的末尾。
  • "r+": 以读写方式打开文件。
  • "w+": 以读写方式打开文件。如果文件已经存在,则文件内容将被清除。
  • "a+": 以读写方式打开文件。如果文件已经存在,则新的内容将被写入文件的末尾。
FILE *fp;
char filename[] = "example.txt";
fp = fopen(filename, "r");

上述代码打开了一个名为 example.txt 的文件,并以只读方式打开文件。如果文件不存在,则会返回空指针。

读取文件

在 C 中,我们可以使用 fread() 函数读取文件内容。该函数需要四个参数:要读取数据的变量、每个数据的字节数、要读取的数据项数以及文件指针。

例如,以下代码行从文件中读取 10 个字符并将其存储在 buffer 中:

fread(buffer, 1, 10, fp);
写入文件

在 C 中,我们可以使用 fwrite() 函数将数据写入文件。该函数需要四个参数:要写入数据的变量、每个数据的字节数、要写入的数据项数以及文件指针。

例如,以下代码行将字符串写入文件中:

fwrite("Hello, World!", 1, 13, fp);
关闭文件

在 C 中,我们需要使用 fclose() 函数关闭打开的文件。该函数需要文件指针作为参数。

fclose(fp);
完整示例

以下是一个完整的示例,在该示例中,我们将从文件中读取数据并将其写入另一个文件中。

#include <stdio.h>

int main() {
    FILE *in, *out;
    in = fopen("input.txt", "r");
    out = fopen("output.txt", "w");

    char buffer[1024];
    size_t readBytes = fread(buffer, 1, 1024, in);
    fwrite(buffer, 1, readBytes, out);

    fclose(in);
    fclose(out);
    return 0;
}

该示例中,我们使用 fread() 函数读取来自 input.txt 的数据,并使用 fwrite() 函数将该数据写入 output.txt 文件。

结论

在 C 中,通过打开文件,我们可以轻松地处理文件的读取和写入。我们可以使用 fopen() 函数打开文件、使用 fread() 函数从文件读取数据、使用 fwrite() 函数将数据写入文件并使用 fclose() 函数来关闭文件。