C++ 读取文件 问题

crazypeter2005 2008-04-14 01:12:48
Interval_Seq Loop_Count Avg Min Max Sleep Err_Cnt Exe_Cnt
#=====Item:Create=====
1 1 781 781 781 0 0 1
#=====Item:CreateSearchItem=====
1 1 3094 3094 3094 0 0 1
Interval_Seq 1 ThroughPut :2
#=====Item:Create=====
2 1 700 700 700 0 0 1
Interval_Seq 2 ThroughPut :1

以上是个文件,是某Log
我想读到另外一个文件里面:
成为如下的格式

Interval_Seq Loop_Count Avg Min Max Sleep Err_Cnt Exe_Cnt
#=====Item:Create=====
1 1 781 781 781 0 0 1
2 1 700 700 700 0 0 1

#=====Item:CreateSearchItem=====
1 1 3094 3094 3094 0 0 1

该如何实现啊?

我该如何使用C++实现啊?用getline()?

...全文
187 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
冷月清晖 2008-04-15
  • 打赏
  • 举报
回复

strtok
结合
WritePrivateProfileString
crazypeter2005 2008-04-14
  • 打赏
  • 举报
回复
clhposs,能写一个转最开始的文件的程序吗?谢谢了
clhposs 2008-04-14
  • 打赏
  • 举报
回复
#=====Item:Create=====如果都是这样就用if判断吧-_-!把他复制进string里面
如果你读的和你设置的一样 那么下一行就读到另外一个文件中去
crazypeter2005 2008-04-14
  • 打赏
  • 举报
回复
想实现的是搜索Item:Create,然后把整个Log的含有"#=====Item:Create===== "的行的下一行给打出来,即

#=====Item:Create=====
1 1 781 781 781 0 0 1
2 1 700 700 700 0 0 1
34 ...................(等等)
由于Item:Create这样类似的操作很多,用了个大循环在外边
每次getline包含Item:Create,却要把它的下一行写入新文件,该如何实现啊?
clhposs 2008-04-14
  • 打赏
  • 举报
回复
既然你要有几行不读 你就设置那几行不push_back进vector去
clhposs 2008-04-14
  • 打赏
  • 举报
回复
ifstream x(name);
vector<string> s
string s1
getline(x,s1);
s1=s1+"\n";
s.push_back(s1;)
循环解决!

64,647

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧