【C语言】如何将数据写入文件?

如何将数据写入文件?

在C语言中,你可以使用标准库中的函数将数据写入文件。以下是一些常用的方法:

使用 fprintf() 写入格式化数据

fprintf() 函数类似于 printf(),但它将数据写入文件而不是输出到标准输出。

c复制代码

#include <stdio.h>
int main() {
FILE *file;
int number = 42;
float f = 3.14;
char str[] = "Hello, world!";
file = fopen("output.txt", "w"); // 以写入方式打开文件
if (file == NULL) {
perror("Error opening file");
return 1;
}
// 向文件中写入数据
fprintf(file, "Number: %d, Float: %f, String: %s\n", number, f, str);
fclose(file); // 关闭文件
return 0;
}

在上面的代码中,fprintf() 将格式化字符串和变量值写入文件。

使用 fwrite() 写入二进制数据

如果你需要写入二进制数据或大量的数据块,可以使用 fwrite() 函数。

c复制代码

#include <stdio.h>
int main() {
FILE *file;
int numbers[] = {1, 2, 3, 4, 5};
size_t count = sizeof(numbers) / sizeof(numbers[0]);
file = fopen("binary_output.bin", "wb"); // 以二进制写入方式打开文件
if (file == NULL) {
perror("Error opening file");
return 1;
}
// 向文件中写入二进制数据
size_t itemsWritten = fwrite(numbers, sizeof(int), count, file);
if (itemsWritten != count) {
fprintf(stderr, "Error writing to file\n");
return 1;
}
fclose(file); // 关闭文件
return 0;
}

在上面的代码中,fwrite() 将整数数组写入二进制文件。

使用 fputc() 写入单个字符

如果你需要逐个字符地写入文件,可以使用 fputc() 函数。

c复制代码

#include <stdio.h>
int main() {
FILE *file;
char ch = 'A';
file = fopen("char_output.txt", "w"); // 以写入方式打开文件
if (file == NULL) {
perror("Error opening file");
return 1;
}
// 向文件中写入单个字符
fputc(ch, file);
fclose(file); // 关闭文件
return 0;
}

注意事项

  • 使用 fopen() 打开文件时,确保选择正确的模式(如 "w" 表示写入,如果文件已存在则覆盖;"a" 表示追加,如果文件已存在则在文件末尾添加内容)。
  • 在写入文件后,使用 fclose() 关闭文件以释放资源。
  • 检查 fwrite() 和其他写入函数的返回值以确保数据成功写入。

这些是从C语言中将数据写入文件的基本方法。根据你的具体需求和数据类型,你可能需要选择最适合你的方法。

相关推荐

  1. C语言如何数据写入文件

    2024-03-25 19:28:03       21 阅读
  2. 如何在Node.jsconsole日志写入文件

    2024-03-25 19:28:03       35 阅读
  3. Android开发中String数据写入本地文件

    2024-03-25 19:28:03       42 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-03-25 19:28:03       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-03-25 19:28:03       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-03-25 19:28:03       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-03-25 19:28:03       18 阅读

热门阅读

  1. .NET 依赖注入和配置系统

    2024-03-25 19:28:03       16 阅读
  2. app上传图片和视频

    2024-03-25 19:28:03       15 阅读
  3. Warning: fread(): Length parameter must be greater than 0

    2024-03-25 19:28:03       15 阅读
  4. Docker 容器中运行 JAR 文件的方法

    2024-03-25 19:28:03       21 阅读
  5. 突破编程_C++_查找算法(分块查找)

    2024-03-25 19:28:03       16 阅读
  6. springboot多数据源&动态数据源(主从)

    2024-03-25 19:28:03       20 阅读
  7. 数据结构-双向链表-003

    2024-03-25 19:28:03       13 阅读
  8. 第N5周:调用Gensim库训练Word2Vec模型

    2024-03-25 19:28:03       16 阅读
  9. 接口自动化测试入门基础知识

    2024-03-25 19:28:03       17 阅读
  10. python把图片重命名

    2024-03-25 19:28:03       19 阅读
  11. 委托(非常详细)

    2024-03-25 19:28:03       17 阅读