C++中简单的文本文件输入/输出示例详解

yizhihongxing

下面我们来详细讲解C++中简单的文本文件输入/输出。

前置知识

在学习本文时,你需要掌握以下C++基础知识:

  • 文件操作
  • C++流(包括输入流和输出流)
  • 命名空间的使用

简介

简单来说,C++中文件的输入/输出就是指将程序中的数据读取、写入到文件中,或者将文件中的数据读取、写入到程序中。本文详细介绍了C++中如何使用文件流来进行文本文件的输入和输出操作,其中包含两个示例。

示例1

功能

程序从键盘上读取一些字符串,然后将它们写入到一个文本文件里。具体步骤如下:

  1. 使用fstream对象打开一个文本文件(以输出方式)
  2. 从标准输入读入一些字符串
  3. 将这些字符串写入到打开的文本文件中
  4. 关闭文件

代码

#include <iostream>
#include <fstream>
using namespace std;

int main() {
    // 打开一个文件(以输出方式)
    ofstream fout("file.txt");
    if (!fout) {
        cout << "Failed to open file.txt." << endl;
    }

    // 读取字符串并写入文件中
    string str;
    while (getline(cin, str)) {
        fout << str;
    }

    // 关闭文件
    fout.close();
    return 0;
}

解析

首先,我们使用ofstream对象以输出方式打开一个文件file.txt,如果打开失败,就输出错误信息(这部分代码可以用ofstream的成员函数is_open()来判断,便于更准确地处理错误):

ofstream fout("file.txt");
if (!fout) {
    cout << "Failed to open file.txt." << endl;
}

接下来从标准输入中读取字符串,并将字符串写入到打开的文件中,代码如下:

string str;
while (getline(cin, str)) {
    fout << str;
}

这里使用getline()函数从标准输入中读取一行字符串,这是因为我们读入的字符串可能包含空格和换行符,用cin的话会出现问题。将读取到的字符串写入到打开的文件中,即:

fout << str;

最后我们关闭文件,代码如下:

fout.close();

需要注意的是,在使用文件流时,关闭文件是非常重要的,否则会出现文件写入失败的情况。

示例2

功能

从文本文件中读取一些字符串,并在标准输出中显示出来。具体步骤如下:

  1. 打开一个文本文件(以输入方式)
  2. 从文件中逐行读取字符串
  3. 将读取到的字符串输出到标准输出中
  4. 关闭文件

代码

#include <iostream>
#include <fstream> 
using namespace std;

int main() {
    // 打开一个文件(以输入方式)
    ifstream fin("file.txt");
    if (!fin) {
        cout << "Failed to open file.txt." << endl;
    }

    // 逐行读取文件,输出到标准输出中
    string line;
    while (getline(fin, line)) {
        cout << line << endl;
    }

    // 关闭文件
    fin.close();
    return 0;
}

解析

首先,我们使用ifstream对象以输入方式打开一个文件file.txt,如果打开失败,就输出错误信息:

ifstream fin("file.txt");
if (!fin) {
    cout << "Failed to open file.txt." << endl;
}

接下来每读取一行即将它输出到标准输出中,代码如下:

string line;
while (getline(fin, line)) {
    cout << line << endl;
}

和写入文件一样,使用getline()函数每次读取一行,将读入到的一行字符串输出。需要注意的是每次输出一行后都要加上换行符,否则会出现多行文本在同一行输出的情况。

最后我们关闭文件,代码如下:

fin.close();

需要注意,打开文件和关闭文件时,文件路径要与文件名称一起写明,文件路径可以是绝对路径或相对路径,相对路径需要结合程序所在目录进行调整。

总结

本文通过两个示例,详细介绍了C++中文本文件的输入/输出。

在打开文件时,我们可以使用fstreamifstreamofstream来创建对应的文件输入/输出流,并通过指定文件路径、文件名和打开方式(二进制或文本)等来控制文件操作。

在进行文件输入/输出时,我们可以利用流的输入和输出操作符>><<来读取、写入数据,或使用getline()函数来读取一个字符串。在进行文件操作时,我们需要注意错误处理和关闭文件操作。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C++中简单的文本文件输入/输出示例详解 - Python技术站

(0)
上一篇 2023年6月26日
下一篇 2023年6月26日

相关文章

  • JDK13.0.1安装与环境变量的配置教程图文详解(Win10平台为例)

    以下是“JDK13.0.1安装与环境变量的配置教程图文详解(Win10平台为例)”的完整攻略: 1. 下载JDK13.0.1安装程序 首先,你需要从Oracle官网(https://www.oracle.com/technetwork/java/javase/downloads/jdk13-downloads-5672538.html)下载JDK13.0.1…

    other 2023年6月27日
    00
  • C# 窗体(登录界面)

    概述 在C#中,我们可以使用窗体来创建用户界面。本文将为您提供一份完整攻略,介绍如何创建一个登录界面,并提供两个示例说明。 创建C#窗体登录界面的步骤 步骤1:创建新项目 在创建C#窗体登录界面之前,我们需要先创建一个新项目。可以使用以下步骤来创建新项目: 打开Visual Studio。 选择“File”菜单,然后选择“New”选项。 在“New Proj…

    other 2023年5月5日
    00
  • AngularJS Controller作用域

    AngularJS Controller作用域攻略 AngularJS是一个流行的JavaScript框架,用于构建Web应用程序。在AngularJS中,Controller是一个重要的概念,它用于管理应用程序的数据和逻辑。Controller作用域是指Controller与视图之间的连接,它定义了Controller中可用的变量和函数。 创建Contro…

    other 2023年8月19日
    00
  • SQL语句(二)创建带主键和约束的数据表

    SQL语句(二)创建带主键和约束的数据表 在之前的SQL语句(一)文章中,我们介绍了如何使用SQL语言创建一个最简单的数据表。在本文中,我们将介绍如何创建一个带主键和约束的数据表。 什么是主键 首先,让我们来了解一下什么是主键。主键是一列或一组列,用来标识表中的唯一记录。主键是区分每个记录的唯一标识符。如果一个表没有主键,那么该表被称为没有主键的表。 创建带…

    其他 2023年3月28日
    00
  • Java关键字this与super详解用法

    Java关键字this与super详解用法 this关键字 介绍 在Java中,this是一个关键字,它可以用来引用当前对象。每个对象都有一个隐式的this引用,它指向对象的本身。使用this关键字可以访问当前对象的成员变量、成员方法、构造方法等。 用法 访问成员变量 使用this关键字可以访问当前对象的成员变量。如果成员变量与方法参数的名字相同,就可以使用…

    other 2023年6月26日
    00
  • macossierra10.12.6安装u盘制作

    以下是详细讲解“macOS Sierra 10.12.6安装U盘制作的完整攻略”,过程中至少包含两条示例说明的标准Markdown格式文本: macOS Sierra 10.12.6安装U盘制作的完整攻略 在安装macOS Sierra 10.12.6操作系统时,可以使用U盘进行安装。本文将介绍如何制作macOS Sierra 10.12.6安装U盘,包括使…

    other 2023年5月10日
    00
  • C#设置右键菜单的方法

    C#设置右键菜单的方法 在 C# 编程中,我们可以使用 ContextMenuStrip 控件来设置右键菜单。下面是 C# 设置右键菜单的详细攻略。 准备工作 在开始设置右键菜单之前,我们需要先创建一个 Windows 窗体应用程序,并添加一个控件作为右键菜单的触发对象。这里以一个简单的 Windows 窗体应用程序为例,代码如下: namespace Ri…

    other 2023年6月27日
    00
  • VSCODE添加open with code实现右键打开文件夹

    下面是“VSCODE添加open with code实现右键打开文件夹”的完整攻略: 步骤一:安装open with code插件 首先,我们需要安装一个叫做“open with code”的插件,该插件可以在右键菜单中添加一个“Open with Code”的选项。我们可以在VSCODE的插件市场中搜索“open with code”插件,然后进行安装。 …

    other 2023年6月27日
    00
合作推广
合作推广
分享本页
返回顶部