c 中的fscanf 如何用fstream或其它C++方法实现
如下:
fscanf(fp,"Node Number:Np=%d",&Np);
其中,fp是FILE 指针,Np 是int。
我想到的方法是:“Node Number:Np=”一共有?个字符,用fstream的 >> 循环?次,逐个字符空读出来。最后再将Np读到int里面去。
感觉有点笨,不像fscanf 可以一下子“Node Number:Np=”就全略过了,所以想请教下,不用fscanf的话,C++中有没有比较方便的方法?
谢谢!
问题点数:20、回复次数:8Top
1 楼0uhuang(无闲老衲)回复于 2006-03-19 11:44:48 得分 0
自已顶Top
2 楼0uhuang(无闲老衲)回复于 2006-03-19 14:14:48 得分 0
高手帮忙啊。
关键是如何方便地去掉没用的字符Top
3 楼xiaocai0001(高楼目尽欲黄昏/梧桐叶上萧萧雨)回复于 2006-03-19 17:26:23 得分 0
直接读出这一行到一个字符缓冲区中
再用sscanf()来处理也是一种方式.Top
4 楼0uhuang(无闲老衲)回复于 2006-03-20 09:43:18 得分 0
Re 楼上:这种方式对比fscanf区别在哪里呢? 谢谢!Top
5 楼zzw820626(偶要分,偶要星星)回复于 2006-03-20 12:53:59 得分 4
tellg(int posion)Top
6 楼xiaocai0001(高楼目尽欲黄昏/梧桐叶上萧萧雨)回复于 2006-03-20 12:56:33 得分 10
>> Re 楼上:这种方式对比fscanf区别在哪里呢? 谢谢!
没有多大区别, 你要是执意不肯用fscanf()的话, 只好变通的用一下其他的了, 呵呵Top
7 楼fireinsnow(喜欢蓝色)回复于 2006-03-20 14:55:28 得分 6
fstream file(..., ios_base::binary | ios_base::in);
file.seekg(int posion); // 跳到posion
file.seekp(int posion); // 跳回posion
高手指教Top
8 楼0uhuang(无闲老衲)回复于 2006-03-21 14:59:23 得分 0
用数的方法的话,违背了方便的初衷.就不用了.Top




