C++实现将输入的内容输出到文本文件

 更新时间:2023年08月04日 09:17:02   作者:开心的喜茶  
这篇文章主要介绍了C++实现将输入的内容输出到文本文件问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

C++将输入的内容输出到文本文件

将内容输出到文本中要用ofstream这个类来实现。

具体步骤如下:

ofstream mycout(“temp.txt”);//先定义一个ofstream类对象mycout,括号里面的"temp.txt"是我们用来保存输出数据的txt文件名。这里要注意的是我们的"temp.txt"用的是相对路径,你也可以写绝对路径。
mycout<<“hello”<<endl;//这样就把"hello"输出到temp.txt文件中了
mycout.close();//最后要记得关闭打开的文件(这里打开的就是temp.txt文件)

现在给你提供一个完整的程序来实现你说的将输入的内容输出到文件

#include <iostream>
#include <fstream>//ofstream类的头文件
using namespace std;
int main()
{
int n;
cin>>n;
ofstream mycout("temp.txt");
mycout<<n<<endl;
mycout.close();
return 0;
}

C++简单文件输入/输出

1、写入到文本文件

  • 包含头文件fstream
  • 头文件fstream中定义了一个用于处理输出的ofstream类
  • 需要声明一个或多个ofstream变量(对象),
  • 将ofstream对象与文件关联起来。常用的方法是open()
  • 使用完文件后,应使用方法close()将其关闭
  • 可结合ofstream对象和运算符<<来输出各种类型的数据

当创建好一个ofstream对象后,便可以像使用cout一样使用它。

#include<iostream>
#include<fstream>
using namespace std;
int main()
{
	char automobile[50];
	int year;
	double a_price;
	double b_price;
	ofstream outFile;
	outFile.open("carimfo.txt");//打开文件,或者创建文件,总之就是和一个文件关联
    //默认情况下,open()将首先截断该文件,即将其长度截短到零——丢弃原有内容,将新的输出加入到文件。
	cout << "Enter the make and model of automobile:";
	cin.getline(automobile, 50);
	cout << "Enter the model year:";
	cin >> year;
	cout << "Enter the original asking price:";
	cin >> a_price;
	b_price = 0.913 * a_price;
	//写入文件
	outFile << "Make and model: " << automobile << endl;
	outFile << "Year: " << year << endl;
	outFile << "Was asking $" << a_price << endl;
	outFile << "Now asking $" << b_price << endl;
	outFile.close();//关闭文件
	system("pause");
	return 0;
}

2、读取文本文件

其操作和输出相似

#include<iostream>
#include<fstream>
using namespace std;
int main()
{
	//创建文件输入对象,并打开
	ifstream inFile;
	inFile.open("carimfo.txt");
	//判断文件是否打开
	if (!inFile.is_open())
	{
		cout << "Could not open the file carimfo.txt" << endl;
		cout << "Program terminating.\n";
		//函数exit()终止程序  EXIT_FAILURE用于同操作系统通信的参数值
		exit(EXIT_FAILURE);
	}
	double value;
	double sum = 0.0;
	int count = 0;
	while (inFile>>value)
	{
		//cout<<value<<endl;
		count++;
		sum += value;
		inFile >> value;
	}
	if (inFile.eof())
		cout << "End of file reached.\n";
	else if (inFile.fail())
		cout << "Input terminated by data mismatch.\n";
	else
		cout << "Input terminated for unknown reason.\n";
	if (count == 0)
		cout << "NO data processed.\n";
	else{
		cout << "Items read: " << count << endl;
		cout << "Sum: " << sum << endl;
		cout << "Average: " << sum / count << endl;
	}
	inFile.close();
	system("pause");
	return 0;
}

注意

Windows文本文件的每行都以回车字符和换行符结尾;通常情况下,C++在读取文件时将这两个字符转换为换行符,并在写入文件时执行相反的转换。

有些文本编辑器,不会在4自动在最后一行末尾加上换行符。

因此,如果读者使用的是这种编辑器,请在输入最后的文本之后按下回车键,再保存文件,否则最后一个数据将出现问题。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Matlab实现绘制有气泡感的网络图

    Matlab实现绘制有气泡感的网络图

    这篇文章主要介绍了如何利用Matlab实现绘制有气泡感的网络图,文中的示例代码讲解详细,对我们学习Matlab有一定的帮助,需要的可以参考一下
    2023-02-02
  • C语言+win32api写窗体应用程序

    C语言+win32api写窗体应用程序

    本文给大家分享的是个人使用纯C语言结合win32api制作窗体应用程序的代码,非常的简单,给需要的小伙伴参考下。
    2016-02-02
  • MFC串口通信发送16进制数据的方法

    MFC串口通信发送16进制数据的方法

    这篇文章主要为大家详细介绍了MFC串口通信发送16进制数据,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-01-01
  • C++类中如何使用定义的类型别名

    C++类中如何使用定义的类型别名

    这篇文章主要介绍了C++类中如何使用定义的类型别名,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-11-11
  • C++相交链表和反转链表详解

    C++相交链表和反转链表详解

    这篇文章主要介绍了C++相交链表和反转链表,结合实例形式分析了C++相交链表和反转链表的原理、实现方法及相关注意事项,需要的朋友可以参考下
    2021-08-08
  • 基于Qt实现自定义时间选择控件

    基于Qt实现自定义时间选择控件

    这篇文章主要为大家详细介绍了如何基于Qt实现自定义时间选择控件,文中的示例代码讲解详细,具有一定的借鉴价值,感兴趣的小伙伴可以跟随小编一起学习一下
    2023-12-12
  • 使用C++实现FTP上传和下载

    使用C++实现FTP上传和下载

    当在Windows上使用C++进行FTP上传和下载时,您可以使用libcurl库来简化操作,本文将为大家详细介绍具体步骤,感兴趣的小伙伴可以跟随小编一起学习一下
    2023-12-12
  • 用C++实现一个链式栈的实例代码

    用C++实现一个链式栈的实例代码

    本篇文章是对使用C++实现一个链式栈的代码进行了详细的分析介绍,需要的朋友参考下
    2013-05-05
  • C++ 反汇编之关于Switch语句的优化措施

    C++ 反汇编之关于Switch语句的优化措施

    这篇文章主要介绍了C++ 反汇编之关于Switch语句的优化措施,利用三种优化来降低树高度,谁的效率高就优先使用谁,三种优化都无法匹配才会使用判定树,具体内容详情跟随小编一起看看吧
    2022-01-01
  • C++实现LeetCode(25.每k个一组翻转链表)

    C++实现LeetCode(25.每k个一组翻转链表)

    这篇文章主要介绍了C++实现LeetCode(25.每k个一组翻转链表),本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下
    2021-07-07

最新评论