当前位置: 首页 > news >正文

如何在海外推广网站微信注册网站

如何在海外推广网站,微信注册网站,做国外网站用什么颜色,那种网站2021简单的文件管理系统示例介绍: 这个文件管理系统示例是一个简单的命令行程序,允许用户进行文件的创建、读取、追加内容和删除操作。这个示例涉及了一些基本的文件操作和用户交互。 功能概述: 创建文件 (createFile()): 用户可以输入文件名和内…

简单的文件管理系统示例介绍:

这个文件管理系统示例是一个简单的命令行程序,允许用户进行文件的创建、读取、追加内容和删除操作。这个示例涉及了一些基本的文件操作和用户交互。

在这里插入图片描述

功能概述:

  1. 创建文件 (createFile()):

    • 用户可以输入文件名和内容,创建新的文件。
  2. 读取文件 (readFile()):

    • 用户可以输入文件名,读取并显示文件的内容。
  3. 追加文件内容 (appendToFile()):

    • 用户可以输入文件名和内容,将新内容追加到已存在的文件末尾。
  4. 删除文件 (deleteFile()):

    • 用户可以输入文件名,删除指定的文件。

涉及的知识点:

  1. 文件输入输出 (<fstream>):

    • 使用 std::ifstreamstd::ofstream 实现文件读取和写入功能。
  2. 文件流的打开和关闭:

    • is_open()close() 函数用于检查文件流是否打开以及关闭文件。
  3. 命令行交互:

    • 使用 std::cinstd::cout 实现与用户的交互。
  4. 文件操作函数:

    • std::remove() 函数用于删除文件。
  5. 循环和条件语句:

    • 使用 do-while 循环处理菜单选项,根据用户输入的选择执行相应的功能。

通过这个示例,初学者可以了解如何使用 C++ 实现基本的文件操作、用户交互和函数封装,以及如何处理文件的创建、读取、追加和删除等操作。同时也涉及了条件语句、循环等基本的程序控制结构。

示例在Clion中运行步骤:

1. 新建项目

在这里插入图片描述

2. 粘贴代码
#include <iostream>
#include <fstream>
#include <string>void createFile() {std::string filename, content;std::cout << "Enter filename: ";std::cin >> filename;std::ofstream file(filename);if (file.is_open()) {std::cout << "Enter file content (type 'end' to finish):\n";while (true) {std::cin.ignore(); // Ignore newline character from previous inputstd::getline(std::cin, content);if (content == "end") {break;}file << content << std::endl;}file.close();std::cout << "File created successfully!" << std::endl;} else {std::cout << "Error! Unable to create file." << std::endl;}
}void readFile() {std::string filename, line;std::cout << "Enter filename to read: ";std::cin >> filename;std::ifstream file(filename);if (file.is_open()) {std::cout << "File content:" << std::endl;while (std::getline(file, line)) {std::cout << line << std::endl;}file.close();} else {std::cout << "Error! Unable to open file." << std::endl;}
}void appendToFile() {std::string filename, content;std::cout << "Enter filename to append: ";std::cin >> filename;std::ofstream file(filename, std::ios::app);if (file.is_open()) {std::cout << "Enter content to append (type 'end' to finish):\n";while (true) {std::cin.ignore(); // Ignore newline character from previous inputstd::getline(std::cin, content);if (content == "end") {break;}file << content << std::endl;}file.close();std::cout << "Content appended to file successfully!" << std::endl;} else {std::cout << "Error! Unable to open file." << std::endl;}
}void deleteFile() {std::string filename;std::cout << "Enter filename to delete: ";std::cin >> filename;if (std::remove(filename.c_str()) != 0) {std::cout << "Error! Unable to delete file." << std::endl;} else {std::cout << "File deleted successfully!" << std::endl;}
}int main() {char choice;do {std::cout << "\nFile Management System\n";std::cout << "1. Create File\n";std::cout << "2. Read File\n";std::cout << "3. Append to File\n";std::cout << "4. Delete File\n";std::cout << "5. Exit\n";std::cout << "Enter your choice: ";std::cin >> choice;switch (choice) {case '1':createFile();break;case '2':readFile();break;case '3':appendToFile();break;case '4':deleteFile();break;case '5':std::cout << "Exiting...\n";break;default:std::cout << "Invalid choice!\n";break;}} while (choice != '5');return 0;
}
3. 编译运行

在这里插入图片描述


代码拆解,知识点总结

当我们拆分讲解这个文件管理系统示例时,可以按照功能模块来逐步解释每个部分的作用和实现。

🟥 1. 创建文件功能 (createFile()):

void createFile() {std::string filename, content;std::cout << "Enter filename: ";std::cin >> filename;std::ofstream file(filename);// 检查文件是否成功打开if (file.is_open()) {std::cout << "Enter file content (type 'end' to finish):\n";while (true) {std::cin.ignore(); // 忽略上一个输入中的换行符std::getline(std::cin, content);if (content == "end") {break;}file << content << std::endl;}file.close();std::cout << "File created successfully!" << std::endl;} else {std::cout << "Error! Unable to create file." << std::endl;}
}
  • 这个函数允许用户输入文件名和内容,在给定的文件名下创建文件并将用户输入的内容写入文件。
  • 使用 std::ofstream 打开文件,使用 file.is_open() 检查文件是否成功打开,然后读取用户输入的内容,并将内容写入文件。

🟥 2. 读取文件功能 (readFile()):

void readFile() {std::string filename, line;std::cout << "Enter filename to read: ";std::cin >> filename;std::ifstream file(filename);// 检查文件是否成功打开if (file.is_open()) {std::cout << "File content:" << std::endl;while (std::getline(file, line)) {std::cout << line << std::endl;}file.close();} else {std::cout << "Error! Unable to open file." << std::endl;}
}
  • 这个函数允许用户输入文件名,然后打开文件并将文件内容逐行读取并显示在屏幕上。

🟥 3. 追加文件内容功能 (appendToFile()):

void appendToFile() {std::string filename, content;std::cout << "Enter filename to append: ";std::cin >> filename;std::ofstream file(filename, std::ios::app);// 检查文件是否成功打开if (file.is_open()) {std::cout << "Enter content to append (type 'end' to finish):\n";while (true) {std::cin.ignore(); // 忽略上一个输入中的换行符std::getline(std::cin, content);if (content == "end") {break;}file << content << std::endl;}file.close();std::cout << "Content appended to file successfully!" << std::endl;} else {std::cout << "Error! Unable to open file." << std::endl;}
}
  • 这个函数允许用户输入文件名和内容,在给定的文件名下打开文件,并在文件末尾追加用户输入的内容。

📢 Tips: std::getline() 是什么意思?

std::getline() 是 C++ 标准库 <string> 头文件中的函数,用于从输入流中获取一行文本并存储到字符串中。

  • std::getline() 接受两个参数:输入流和字符串。
  • 它从输入流(在这个例子中是 std::cin,标准输入)中读取一行文本,并将读取的内容存储到字符串 line 中,直到遇到换行符 \n 或文件结束符。
  • 这个函数能够读取整行文本,包括空格和制表符等,直到换行符为止。

std::getline() 的特点:

  1. 读取整行文本: 不像 std::cin >> variable 会在遇到空格或换行符时停止读取,std::getline() 会读取整行文本。

  2. 可以指定定界符(可选): 可以传递第三个参数作为定界符,以指定特定的字符作为终止符号,例如 std::getline(std::cin, line, '\t') 将在遇到制表符时停止读取。

  3. 常用于读取用户输入: 在命令行交互中,特别适用于读取用户输入的完整一行文本,例如文件名、描述等信息。

std::getline() 是处理输入流中文本数据时常用的函数,能够方便地读取整行文本并存储到字符串中,适用于许多交互式的输入场景。


🟥 4. 删除文件功能 (deleteFile()):

void deleteFile() {std::string filename;std::cout << "Enter filename to delete: ";std::cin >> filename;// 删除文件if (std::remove(filename.c_str()) != 0) {std::cout << "Error! Unable to delete file." << std::endl;} else {std::cout << "File deleted successfully!" << std::endl;}
}
  • 这个函数允许用户输入文件名,然后尝试删除该文件。

🟥 5. 主函数 (main()):

主函数提供了用户和程序的交互菜单,根据用户的选择调用相应的功能函数。

整个程序通过以上几个模块,实现了文件的创建、读取、追加和删除等功能,并通过命令行菜单和用户输入来控制程序的执行。

Tips: 📢 别忘了跑起来,检查检查有没有BUG ~ 😁


本文就到这里了,感谢您的阅读,明天还有更多的实例学习文章等着你 🎆。别忘了点赞、收藏~ Thanks♪(・ω・)ノ 🍇。

http://www.yayakq.cn/news/121811/

相关文章:

  • 屯济宁做网站公司这么登入wordpress
  • 中山精品网站建设渠道怀宁县住房和建设局网站
  • 手表网站妨水iis网站asp.net部署
  • 临清网站制作网站图片优化
  • 网站制作策划建设大纲金华专业做网站公司
  • 在柬埔寨做网络销售推网站宁波比较好的外贸公司
  • 杭州网站建设专业公司网站建设包含那些 内容
  • 中国十大门户网站排行wordpress 外部视频
  • 食品建设网站前的市场分析布局网站开发
  • 定制网站建设宝安西乡汉中市建设工程项目审批管理系统
  • 企业网站建设包括哪些优跃达官网网站建设项目
  • 重庆北碚网站制作c2c电子商务网站需具备哪些业务功能
  • 聊城市网站制作秦皇岛属于河北哪个市
  • 企业类网站模板免费下载汉中北京网站建设
  • 搜题在线使用网页版wordpress优化版本
  • 网站开发工程师薪资待遇响应式网站报价
  • 查看网站名称阿里云服务器上如何做网站
  • 南充网站建设略奥网络建筑设计有哪些专业
  • 苗木网站开发需求自己怎么注册网站模板
  • 做网站老板嫌弃太丑谁的锅dede网站正在维护中应该怎样设置
  • 我的班级网站模板建设银行网站的特点
  • 天猫网站设计分析什么样算网站需要备案
  • 网络外包运营公司厦门最快seo
  • 大连企业招聘网站asp网站设为首页代码
  • 广东智慧团建网站登录申请注册网站
  • 个人做电商网站windows服务器安装wordpress
  • 淮安做网站就找卓越凯欣云虚服务器网站建设
  • 手机做点击赚钱的网站wordpress为什么加载速度很慢
  • 厦门模板建站系统网站建设规划方案论文
  • 贵州企业网站建设策划windows7优化大师下载