0
char a[133];
char x[4]="ccc";
int line=3,count=1;
//string aa;
//cin>>aa;
ifstream out("text");
while(out.getline(a,4,':')&&(strncmp(a,x,4)))
{cout<<"hi";
cout<<a<<endl;
out.getline(a,4,'\n');
}
out.close();
return 0;`
在文本文件中抓住从特定位置的细节,从文件中的C++
aaa:1111111
bbb:222222
ccc:333333
ddd:444444
我想跳就特定行抢的细节。但我没有得到它。请指导我如何在C++中做到这一点
毕竟得到了解决方案。你可以看到的结果也
这里是
int main(){
ifstream in ("text");
if(!in){cout<<"cannot open"<<endl;}
string buffer;
int line_count=1; size_t line=1;
while(line){
getline(in,buffer);
if(!buffer.find_first_of("bbb:"))
{
cout<<line<<endl;
break;
}
else
{
line=line+1;
}
}
cout<<buffer<<endl;
for(int line_count=0;line_count<line-1&&getline(in,buffer);line_count++)
{
}
getline(in,buffer);
in.close();
return 0;
}
再次感谢
非常感谢您的回复。但是,如果我们不知道行号,该怎么办?我们只知道我们需要'bbb'行的详细信息。再次感谢 – Newbie123 2012-02-23 10:22:24
您可以使用'std :: string :: find_first_of(const std :: string&)'检查一行是否以给定的字符串开始 - 如果行以给定的字符串开头,它将返回'0'。因此,例如,'buffer.find_first_of(“bbb:”)'将在您的示例中为第二行返回“0”,并为所有其他行返回非零值。 – 2012-02-23 10:31:21
谢谢你的队友!你是救世主.... – Newbie123 2012-02-23 13:02:20