文件的写入和读取操作

++***题目:
编写一个程序,实现以下功能:

  1. 创建一个新的文本文件,并将用户输入的数据写入文件中。
  2. 打开已存在的文本文件,并将其中的数据显示在屏幕上。***++

#include <stdio.h>

#include <stdlib.h>

void writeToFile() {

FILE *fp;

char data100;

fp = fopen("data.txt", "w");

if (fp == NULL) {

printf("文件打开失败\n");

exit(1);

}

printf("请输入要写入文件的内容:\n");

fgets(data, sizeof(data), stdin);

fprintf(fp, "%s", data);

fclose(fp);

}

void readFromFile() {

FILE *fp;

char content100;

fp = fopen("data.txt", "r");

if (fp == NULL) {

printf("文件打开失败\n");

exit(1);

}

while (fgets(content, sizeof(content), fp)) {

printf("%s", content);

}

fclose(fp);

}

int main() {

int choice;

printf("请选择操作:\n");

printf("1. 写入文件\n");

printf("2. 读取文件\n");

scanf("%d", &choice);

switch(choice) {

case 1:

writeToFile();

break;

case 2:

readFromFile();

break;

default:

printf("无效的选择\n");

break;

}

return 0;

}

这个程序通过一个菜单提供两个选项,用户可以选择写入数据到文件中,或者显示已存在的文件内容。根据用户的选择,调用相应的函数,执行对应的操作。

在`writeToFile()`函数中,程序创建一个新的文件(如果文件不存在),并将用户输入的数据写入文件中。

在`readFromFile()`函数中,程序打开已存在的文件,并将文件中的内容逐行显示在屏幕上。

相关推荐
水饺编程2 小时前
AT&T 汇编语言学习笔记开篇语
c语言·汇编·c++
wuminyu2 小时前
虚拟线程底层ForkJoinPool的工作窃取算法机制
java·linux·c语言·jvm·c++
Darkwanderor8 小时前
线程概念和Linux线程
linux·c语言·c++
clear sky .8 小时前
[freertos源码阅读]task.c任务篇
c语言·开发语言
Darkwanderor9 小时前
Linux线程控制
linux·c语言·c++
CAE二次开发工程师9 小时前
【流体力学考研精讲】基础篇
考研·二次开发·仿真·cae·流体力学·结构仿真·#ansa
Darkwanderor9 小时前
多线程的互斥问题和互斥锁解决互斥问题
linux·c语言·c++
(Charon)9 小时前
【C++】手写线程安全队列:mutex + condition_variable 实现生产者消费者模型
c语言·开发语言·c++
一念春风10 小时前
文件透明加密(C、C#)
c语言·c#·wpf
Hhy_110710 小时前
《C++深度解构01》C++入门基础
c语言·开发语言·c++·学习·visual studio