MFC文件读取txt的问题,每行的数字个数不确定。 50
while(file.ReadString(strLine)){sscanf(strLine,"%f%f%f%f",num+i,x+i,y+i,z+i);}本来是用这个代...
while(file.ReadString(strLine))
{
sscanf(strLine,"%f %f %f %f",num+i,x+i,y+i,z+i);
}
本来是用这个代码写的,但是不确定一行中的数字就没法用了,所以想问这种情况怎么写。
1 1 2 4
2 2 3 5
3 4 6 7
4 3 10 14
5 1 6 11
6 7 8 12
7 5 9 10
8 8 9 13
9 11 12 15
10 13 14 15
比如我现在txt文本中是这样的,怎么读取到MFC中去? 展开
{
sscanf(strLine,"%f %f %f %f",num+i,x+i,y+i,z+i);
}
本来是用这个代码写的,但是不确定一行中的数字就没法用了,所以想问这种情况怎么写。
1 1 2 4
2 2 3 5
3 4 6 7
4 3 10 14
5 1 6 11
6 7 8 12
7 5 9 10
8 8 9 13
9 11 12 15
10 13 14 15
比如我现在txt文本中是这样的,怎么读取到MFC中去? 展开
2013-12-14 · 知道合伙人软件行家
关注
展开全部
循环读取。
CString str, strCnt, strTemp;
int num= 0;
double dat[10];
if(strLine!="")
{
while( true )
{
str= strLine.SpanExcluding(" ");
strLine.TrimLeft();
strLine= strLine.Mid(str.GetLength());
str.TrimLeft();
if(str!="")
sscanf(str, "%lf", &dat[num++]);
if(strLine=="")
break;
}
}
strCnt.Format("数字个数:%d。\n分别是:", num);
for (int n= 0; n< num; n++)
{
strTemp.Format("%lf ", dat[n]);
strCnt+= strTemp;
}
MessageBox(strCnt);
2013-12-14
展开全部
用getch(str)将这一行全部读进来,然后用sscanf(str,"%d %n",&num,&len);然后再str+=len - 1;len代表读入的字节个数
追问
抱歉没有写过这些语句,能麻烦写个详细的完整一点的例子么。。谢谢了。。
追答
前面说错了,是gets得到一行str
gets(str);
while(1){
sscanf(str,"%lf %n",&tmp,&len);
if(len == 0) break;
str += len - 1;
}
类似这样循环读一行的所有数
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询