将函数生成的数据导出至文本文件(xxx.txt)中,可以利用<fstream>头文件及相关函数,某示例如下:
#include <fstream>
#include <iostream>
using namespace std;
void main()
{
ofstream fout; //声明ofstream对象fout
fout.open ("xxx.txt"); //代开xxx.txt文件,如果没有则创建
fout << "文本内容"; //在xxx.txt中写入“文本内容”
fout.close(); //关闭文件
system("pause");
return;
}
可以看到fout.open()的括号内字符代表需要打开或创建的文本文件,因此需要导出到多个文本文件,可利用循环语句进行文本文件的有序命名,如:1.txt、2.txt、3.txt。
此处利用函数sprintf()的功能进行赋值,sprintf_s()为sprintf()的安全版本,避免溢出,需要头文件<stdio.h> ,某示例如下:
#include<stdio.h>
#include <fstream>
#include <iostream>
using namespace std;
void main()
{
char file[20];
int n;
cin >> n;
for (int i = 1; i <= n; ++i) {
sprintf_s(file, "%d.txt", i); //命名为"0.txt", "1.txt", …
ofstream fout;
fout.open(file);
fout << "文本内容" << endl;
fout.close();
}
/*百分号+字母的基本概念与用法如下
%d 十进制有符号整数
%u 十进制无符号整数
%f 浮点数
%s 字符串
%c 单个字符
%p 指针的值
%e 指数形式的浮点数
%x, %X 无符号以十六进制表示的整数
%0 无符号以八进制表示的整数
%g 自动选择合适的表示法
*/
system("pause");
return ;
}
最终实现向多个文本文件写入内容
代码实现基于VS2022