gpt4 book ai didi

c++ - 一个输入到多个输出文件 C++

转载 作者:太空宇宙 更新时间:2023-11-04 15:42:10 27 4
gpt4 key购买 nike

我想知道是否有人知道如何从一个文件 (.txt) 获取输入并将其输出到多个输出文件 (.txt)。例如,如果它读取 3 个整数值,它会将第一个值输出到第一个输出文件,依此类推。我只是想看看我是否可以通过不必在不同的时间运行输出函数来节省一些时间。

如果有人有兴趣进一步了解我的意思,这里是我整理的代码。

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

int main()
{
ifstream instream;
ofstream outstream;
int ip;
string ipadd;
string name;
string date;
char test1;

instream.open("inputfile.txt");
outstream.open("ipaddress.csv");
outstream.open("name.csv");
outstream.open("date.csv");



if(instream.fail())
cout<<"Incorrect File Name\n";


while(!instream.eof())
{
instream>>ip;
if(ip==192)
{
instream.ignore(10000,'\n');
}
else
{
instream>>ipadd;
instream.ignore(3, ' - ');
instream>>name;
instream.ignore(2, '[');
instream>>date;
cout<<ip<<ipadd<<" "<<name<<" "<<date<<endl;
outstream<<ipadd<<" "<<name<<" "<<date<<endl;
instream.ignore(256,'\n');
}
}

instream.close();
outstream.close();

return 0;
}

希望将值 ip 和 ipadd 输出到一个输出文件中,存储在 name 中的值输出到第二个输出文件中,date 输出到第三个输出文件中。对于那些好奇的人,该程序通过 Apache 日志进行分类并输出用户的 IP 地址、名称和登录时间;排除任何来自内部网络。我确信我所做的实践不尽如人意,但感谢您花时间查看它。

最佳答案

为每个文件创建一个单独的ofstream:

ofstream osIpAddress;
ofstream osName;
ofstream osDate;

然后相应地处理它们中的每一个。

关于c++ - 一个输入到多个输出文件 C++,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21394677/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com