+ -
当前位置:首页 → 问答吧 → C++截取字符串问题

C++截取字符串问题

时间:2011-12-18

来源:互联网

各位大哥大姐,怎样才能截取Last列的数字
 Time, Count, Last, Bid, Ask, Flag
000022, 1, 614.50, 612.25, 616.75, SUCCESS PRICE
000022, 2, 614.65, 612.25, 617.05, SUCCESS PRICE
000122, 3, 614.90, 612.75, 617.05, SUCCESS PRICE
一下代码是截取啦Time,但是如何再截取Last没点思路.求大哥大姐帮忙....
在线急等.
#include <iostream>
#include <fstream>
using namespace std;
#define SUM -1 

int main()
{
int count = SUM;
char buffer[1024];
//char m_buffer[1024];
int lenth;


//读取文件
fstream out("F:\\log\\Pd_.log",ios::in);
fstream _out("F:\\log\\_Pd_.log",ios::out);


//处理文件

while (!out.eof())
{
out.getline(buffer,1024);
count++;
}
cout<<count<<endl;
//输出文件
out.clear();
out.seekg(0,ios::beg);
//cin.get();
while (!out.eof())
{
memset(buffer,0,1024);
out.getline(buffer,1024);
//输出到文件
for (int i=0; i<1024; i++ )
{
if ( ',' == buffer[i])
{
for (int j=0;j<i;j++)
{
cout<<buffer[j];
_out<<buffer[j];

}
cout<<endl;
_out<<endl;
break;
}
}
}
out.close();
_out.close();
return 0;
}

作者: Cimo_ndsc   发布时间: 2011-12-18

会一个就不会第二个了吗,还是按照你的规则重复那个过程

作者: bdmh   发布时间: 2011-12-18

截取一个字段后,把这个字段从buffer中去掉,这样就可以循环操作,取下一个元素了。

作者: jixingzhong   发布时间: 2011-12-18

找第二个“逗号”和第三个“逗号”的位置把,然后取中间部分的字串。不过感觉这种方法挺丑的,能用正则表达式就好了,学习楼下

作者: RabbitLBJ   发布时间: 2011-12-18

初学C++ 很多东西还不知道 所以想讨论下 改怎么实现才好...
有哪位大哥哥 大姐姐 能写下代码  
学习学习

作者: Cimo_ndsc   发布时间: 2011-12-18

sstream这个标准库看下

作者: youkuxiaobin   发布时间: 2011-12-18