C++中用Find链接网页分离???

bingxue8407 2008-04-03 03:24:36
这段代码的意思是分离出:中国黄页上网的链接。代码没有错误,就是不明白这里的.Find(_T());这个东西怎么用?是什么?帮忙解析一下。。谢谢啊。非常感谢啊。。。。
int pospage = m_HtmlSrc.Find(_T("公司名称及信息查询"),pospage);
if ( pospage == -1 )
{
return -1;
}
if ( ( pospage = m_HtmlSrc.Find(_T("下面是匹配的最前面400条记

录"),pospage) ) != -1 )
{
m_nPageCount = 20;
return 20;
}
else
{
//共<b>
pospage = m_HtmlSrc.Find(_T("共<b>"),pospage);
if( pospage == -1)
return -1;
i=0;
int jj = 0;
while( m_HtmlSrc[pospage+i+5]!='<' )
{
if ( ( (int)m_HtmlSrc[pospage+i+8] < 58 )&&((int)

m_HtmlSrc[pospage+i+8] > 47) )
{
temp.Insert(jj,m_HtmlSrc[pospage+i+8]);
i++;
jj++;
}
else
{
i++;
}
}
}
pagecnt = atoi(temp.GetBuffer(temp.GetLength()));
pagecnt = pagecnt/20;
m_nPageCount = pagecnt;
return pagecnt;
}
还有一段代码:分离 sohu 一级页面内的该查询的网页链接数目。问的也是同样的问题。Find那里不懂。。。急需要人帮忙。。。
int CQueryCompany::AppartUrlSohu()
{
int pospagecnt = 0,pagecnt;
CString temp;
// 得到页面总数
if ( ( pospagecnt = m_HtmlSrc.Find(_T("<TD width=190><FONT color=#FFFFFF>"),pospagecnt) ) == -1 )
{
return pospagecnt;
}
if (( pospagecnt = m_HtmlSrc.Find( _T("条"),pospagecnt)) == -1 )
{
return pospagecnt;
}
int i=0;
int j=0;
while (1)
{
if ( ( (int)m_HtmlSrc[pospagecnt+i] < 58 )&&((int)m_HtmlSrc[pospagecnt+i] > 47) ) // 47-58 为数字
{
temp.Insert(j,m_HtmlSrc[pospagecnt+i]);
i++;
j++;
}
else
{
i++;
}
if(i>10) // 最大为8位数
break;
}
pagecnt = atoi(temp.GetBuffer(temp.GetLength())); // 转化为整型
return pagecnt;
}
...全文
55 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
bingxue8407 2008-04-14
  • 打赏
  • 举报
回复
同样的话,遇到问题靠自己钻研解决。多谢各位的帮忙啦。。非常的感谢。。。结贴啦。
bingxue8407 2008-04-06
  • 打赏
  • 举报
回复
链接到网上的时候是出现很多的界面,就是想看看停在哪一条,但是就是找不到。。。调试不管用的。没有跟踪记录。设置了多个断点也不管用。。。好郁闷。。。。
bingxue8407 2008-04-05
  • 打赏
  • 举报
回复
很奇怪啊,调试看不出的呀。。。。链接出来的网址很多,也不知道到底是搜索的什么?这个格式从来没有见过。。所以很是郁闷啊。。
tooker 2008-04-04
  • 打赏
  • 举报
回复
链接到网址上的时候是怎么回事?调试过吗,停在那一条?
bingxue8407 2008-04-03
  • 打赏
  • 举报
回复
我知道是查找对像中的目标对像的位置,可是它链接到网址上的时候,怎么找啊??有什么用呢??不会看啊。没有用过。龙飞大哥再指点一下吧。。谢谢啦。。。
tooker 2008-04-03
  • 打赏
  • 举报
回复
不好意思,上面_T("abc")是说明abc为Unicode编码
tooker 2008-04-03
  • 打赏
  • 举报
回复
遇到这种基础性问题,最好先看一下MSDN


Find 方法是查找对像中的目标对像的位置

CString str1="abcdefg";
int n=str1.find("b")
n是b在str1中的位置


_T()
是把ACSII 转为 Unicode

18,356

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 网络编程
c++c语言开发语言 技术论坛(原bbs)
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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