主要的就是字符串处理: private void AnsCode(string url) { string date=""; string open=""; string high=""; string low=""; string close=""; string transA=""; string transB=""; string str=url; string s1="",s2="",s3="",s4=""; int pos1=0,pos2=0,pos3=0,pos4=0; int flag=0; while((pos1=str.IndexOf("<td align=middle>"))!=-1) { pos1+=17; str=str.Remove(0,pos1); pos2=str.IndexOf("</td>"); s1=str.Substring(0,pos2); if(flag==0) { date=s1; //MessageBox.Show(date); flag++; } else if(flag==4) { close=s1; flag++; pos3=str.IndexOf("<td align=right>"); pos3+=16; str=str.Remove(0,pos3); pos4=str.IndexOf("</td>"); s1=str.Substring(0,pos4); transA=s1; flag++; pos3=str.IndexOf("<td align=right>"); pos3+=16; str=str.Remove(0,pos3); pos4=str.IndexOf("</td>"); s1=str.Substring(0,pos4); transB=s1; flag++; } else if(flag==1) { open=s1; flag++; } else if(flag==2) { high=s1; flag++; } else if(flag==3) { low=s1; flag++; } if(flag==7) { //处理close字符串 int t1=close.IndexOf("<b>"); t1+=3; close=close.Remove(0,t1); int t2=close.IndexOf("</b>"); close=close.Remove(t2,4); flag=0; //数据在列表中显示 ListViewItem lv=new ListViewItem(); //MessageBox.Show(date); lv.SubItems.Clear(); lv.SubItems[0].Text=date; lv.SubItems.Add(open); lv.SubItems.Add(high); lv.SubItems.Add(low); lv.SubItems.Add(close); lv.SubItems.Add(transA); lv.SubItems.Add(transB); listView1.Items.Add(lv); } } MessageBox.Show("采集完成"); } |
|