西南科技大学C++程序设计实验十二(文件流操作)

一、实验目的

1. 熟悉文件的基本操作;

2. 在类中添加打开文件、保存文件、读取文件等处理函数;

二、实验任务

1. 分析完善程序:主函数创建一个文件对象,每次打开文件,在其尾部添加数据。如果文件不存在,则新建该文件。请将空白处需要完善的功能补充完整。

#include <iostream>

#include <fstream> //调用文件类库文件

using namespace std

int main()

{

    std::ofstream fout(“fang.txt”,ios::app); // 使用构造函数创建对象并打开文件

   ____________________//以另外一种方式创建对象并打开,即调用open函数

    fout << "adfwadd" << "," << "\n";

    __________________________//在上一句的基础上输出“Hello world!”

    _________________//关闭文件

    return 0;

}

完善后的程序代码:

#include <iostream>

#include <fstream>

using namespace std;

int main() {

    std::ofstream fout("fang.txt", ios::app); // 使用构造函数创建对象并打开文件

    if (!fout.is_open()) {

        std::cout << "Failed to open file!" << std::endl;

        return -1;

    }

    fout << "adfwadd" << "," << "\n";

    fout << "Hello world!" << std::endl; // 在上一句的基础上输出“Hello world!”

    fout.close(); // 关闭文件

    return 0;

}

实验思考题回答与结果分析:

(1) 程序运行结果:

程序运行结果为向 fang.txt 文件中追加了两行字符串,分别为 "adfwadd," 和 "Hello world!"

(2) 该程序主要运用.........知识点?编程时需要注意什么?(不要抄袭!

该程序主要运用文件流操作的知识点。在编程时需要注意,打开文件时需要判断文件是否成功打开,否则可能会出现写入失败的情况。同时,使用完文件后需要及时关闭文件,否则可能会导致文件被其他程序占用或者文件内容不完整等问题。

2、分析完善程序:主函数创建一个文件对象,打开文件后向文件写入一个字符串。请将空白处需要完善的功能补充完整。

#include <iostream>

#include <fstream> //调用文件类库文件

using namespace std

int main()

{

    const char *url ="http://c.biancheng.net/cplus/";

    fstream fs; //创建一个 fstream 类对象

    fs.open("test.txt", ios::out); //将 test.txt 文件和 fs 文件流关联

    _____________________//向test.txt文件中写入 url 字符串

    fs.close(); //关闭文件

    return 0;

}

完善后的程序:

#include <iostream>

#include <fstream>

using namespace std;

int main() {

    const char* url = "http://c.biancheng.net/cplus/";

    fstream fs; // 创建一个 fstream 类对象

    fs.open("test.txt", ios::out); // 将 test.txt 文件和 fs 文件流关联

    if (!fs.is_open()) {

        std::cout << "Failed to open file!" << std::endl;

        return -1;

    }

    fs << url; // 向 test.txt 文件中写入 url 字符串

    fs.close(); // 关闭文件

    return 0;

}

实验思考题回答与结果分析:

(1) 程序运行结果:

程序运行结果为向 test.txt 文件中写入了字符串 "http://c.biancheng.net/cplus/"。

(2) 该程序主要运用.........知识点?编程时需要注意什么?(不要抄袭!

该程序主要运用文件流操作的知识点。在编程时需要注意,打开文件时需要判断文件是否成功打开,否则可能会出现写入失败的情况。同时,使用完文件后需要及时关闭文件,否则可能会导致文件被其他程序占用或者文件内容不完整等问题。另外,需要注意文件流的打开模式,例如 ios::out 表示输出模式,如果需要读取文件则需要使用 ios::in 模式。

3、分析完善程序:主函数创建一个文件对象,打开文件后从文件读取信息。请将空白处需要完善的功能补充完整。

void main()

{

int a, b;

char c;

ifstream fin(“data.txt”); //创建输入流对象fin与读取文件data.txt关联

if (!fin)

{ // 如果读取失败,打印fail    

cerr << "fail" << endl;

return -1;

}

fin >> a >> c>>b;   //从文件读取的东西写入给变量

___________________________; //将变量的值输出到显示器上

fin.close();       //关闭文件

a++; b++;

cout << "change a = " << a << endl; //将变化后的变量值输出到显示器上

cout << "change b = " << b << endl;

__________________; //创建输出流对象fout与data2.txt文件关联

__________________; //将变量的值写入文data2.txt件

fout.close(); //关闭文件

}

完善后的程序:

#include <iostream>

#include <fstream>

using namespace std;

int main() {

    int a, b;

    char

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/210742.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

HTML中表格的语法及使用(详解)

Hi i,m JinXiang ⭐ 前言 ⭐ 本篇文章主要介绍HTML中表格的语法及详细使用以及部分理论知识 &#x1f349;欢迎点赞 &#x1f44d; 收藏 ⭐留言评论 &#x1f4dd;私信必回哟&#x1f601; &#x1f349;博主收将持续更新学习记录获&#xff0c;友友们有任何问题可以在评论区留…

Java集合框架定义以及整体结构

目录 一、Java集合框架1.1 什么是java集合框架1.2 集合与数组 二、集合框架具体内容2.1 整体框架2.2 遗留类和遗留接口1.3 集合框架设计特点 参考资料 一、Java集合框架 1.1 什么是java集合框架 Java集合框架&#xff08;Java Collections Framework&#xff09;是Java平台提…

[Linux] yum安装分布式LNMP架构

1. 在一台主机安装nginx&#xff08;192.168.136.120&#xff09; 1.1 搭建nginx相关的yum源 cd /yum.repos.d mkdir bak mv *.repo bak vim /etc/yum.repos.d/nginx.repo [nginx-stable] namenginx stable repo baseurlhttp://nginx.org/packages/centos/7/$basearch/ gpgche…

基于Python+Django+mysql图书管理系统

基于PythonDjangomysql图书管理系统 一、系统介绍二、功能展示三、其它系统四、获取源码 一、系统介绍 程序开发软件&#xff1a;Pycharm 数据库&#xff1a;mysql 采用技术&#xff1a; Django(一个MVT框架&#xff0c;类似Java的SSM框架) 人生苦短&#xff0c;我用Python&a…

【rabbitMQ】rabbitMQ的下载,安装与配置

目录 1. 下载Erland 安装步骤&#xff1a; 配置环境变量&#xff1a; 校验环境变量配置是否成功 2.下载MQ 安装步骤&#xff1a; 添加可视化插件 &#xff1a; 启动&#xff1a; 拒绝访问 1. 下载Erland 因为rabbitMQ是基于Erland,所以在安装rabbitMQ之前需要安装Erla…

【基于NLP的微博情感分析:从数据爬取到情感洞察】

基于NLP的微博情感分析&#xff1a;从数据爬取到情感洞察 背景数据集技术选型功能实现创新点 今天我将分享一个基于NLP的微博情感分析项目&#xff0c;通过Python技术、NLP模型和Flask框架&#xff0c;对微博数据进行清洗、分词、可视化&#xff0c;并利用NLP和贝叶斯进行情感分…

VoxPoser:使用语言模型进行机器人操作的可组合 3D 值图

语言是一种压缩媒介&#xff0c;人们通过它来提炼和传达他们对世界的知识和经验。大型语言模型&#xff08;LLMs&#xff09;已成为一种有前景的方法&#xff0c;通过将世界投影到语言空间中来捕捉这种抽象。虽然这些模型被认为在文本形式中内化了可概括的知识&#xff0c;但如…

Vulnhub-DC-6 靶机复现完整过程

一、搭建环境 kali充当攻击机 ip地址是&#xff1a;192.168.200.14 DC-6充当靶机 &#xff1a; IP地址暂时未知 注意&#xff1a;让两台机器的使用同一种网络适配器 二、信息收集 1.探索同网段存活的主机、 ①第一种方法 arp-scan -l②第二种方法 netdiscover -i eth0 -…

【大数据-Hadoop】从入门到源码编译-概念篇

【大数据-Hadoop】从入门到源码编译-概念篇 Hadoop与大数据生态&#xff08;一&#xff09;Hadoop是什么&#xff1f;&#xff08;二&#xff09;Hadoop组成1. HDFS1.1 NameNode&#xff08;nn&#xff09;1.2 DataNode&#xff08;dn&#xff09;1.3 Secondary NameNode&#…

记一次堆内外内存问题的排查和优化

为优化淘宝带宽成本&#xff0c;我们在网关 SDK&#xff08;Java&#xff09;统一使用 ZSTD 替代 GZIP 压缩以获取更高的压缩比&#xff0c;从而得到更小的响应包。具体实现采用官方推荐的 zstd-jni 库。zstd-jni 会调用 zstd 的 c 库。 背景 在性能压测和优化过程中&#xff0…

nodejs微信小程序+python+PHP北京地铁票务APP-计算机毕业设计推荐 -安卓

目 录 摘 要 I ABSTRACT II 目 录 II 第1章 绪论 1 1.1背景及意义 1 1.2 国内外研究概况 1 1.3 研究的内容 1 第2章 相关技术 3 2.1 nodejs简介 4 2.2 express框架介绍 6 2.4 MySQL数据库 4 第3章 系统分析 5 3.1 需求分析 5 3.2 系统可行性分析 5 3.2.1技术可行性&#xff1a;…

STM32F103

提示&#xff1a;来源正点原子&#xff0c;参考STM32F103 战舰开发指南V1.3PDF资料 文章目录 前言一、pandas是什么&#xff1f;二、使用步骤 1.引入库2.读入数据总结 前言 提示&#xff1a;这里可以添加本文要记录的大概内容&#xff1a; 开发环境硬件普中科技&#xff0c;接…

C++相关闲碎记录(6)

1、使用shared_ptr #include <iostream> #include <memory> #include <set> #include <deque> #include <algorithm> #include <string>class Item { private:std::string name;float price; public:Item(const std::string& n, floa…

光学遥感显著目标检测初探笔记总结

目录 观看地址介绍什么是显著性目标检测根据不同的输入会有不同的变体(显著性目标检测家族)目前这个领域的挑战 技术方案论文1(2019)论文2(2021)论文3(2022) 未来展望 观看地址 b站链接 介绍 什么是显著性目标检测 一张图片里最吸引注意力的部分就是显著性物体&#xff0c;…

C++STL详解+代码分析+典例讲解

vector 的介绍&#xff1a; 1、vector是表示可变大小数组的序列容器。 2、vector就像数组一样&#xff0c;也采用的连续空间来存储元素&#xff0c;这也意味着可以采用下标对vector的元素进行访问。 3、vector与普通数组不同的是&#xff0c;vector的大小是可以动态改变的。 4、…

基于物联网的智能仓管理系统方案

基于物联网的智能仓管理系统方案 一、项目背景 随着企业业务的快速发展&#xff0c;传统的人工仓库管理方式已经无法满足现代企业的需求。仓库运营效率低下、货物出入库错误、库存不准确等问题不断涌现。因此&#xff0c;我们提出一个基于物联网技术的智能仓管理系统方案&…

Redis 五大经典业务问题

一 缓存穿透 缓存穿透是指当请求的数据既不在缓存中也不存在于数据库中时&#xff0c;请求会直接穿透缓存层&#xff0c;到达数据库层。这通常是由于恶意攻击或者程序错误造成的&#xff0c;比如攻击者故意请求不存在的大量数据&#xff0c;导致缓存不命中&#xff0c;所有的请…

智能优化算法应用:基于被囊群算法3D无线传感器网络(WSN)覆盖优化 - 附代码

智能优化算法应用&#xff1a;基于被囊群算法3D无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用&#xff1a;基于被囊群算法3D无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.被囊群算法4.实验参数设定5.算法结果6.参考文…

Moco框架的搭建使用

一、前言   之前一直听mock&#xff0c;也大致了解mock的作用&#xff0c;但没有具体去了解过如何用工具或框架实现mock&#xff0c;以及也没有考虑过落实mock&#xff0c;因为在实际的工作中&#xff0c;很少会考虑用mock。最近在学java&#xff0c;刚好了解到moco框架是用于…

城市基础设施智慧路灯改造的特点

智慧城市建设稳步有序推进。作为智慧城市的基础设施&#xff0c;智能照明是智慧城市的重要组成部分&#xff0c;而叁仟智慧路灯是智慧城市理念下的新产品。随着物联网和智能控制技术的飞速发展&#xff0c;路灯被赋予了新的任务和角色。除了使道路照明智能化和节能化外&#xf…