网址在这里 
http://stock.sina.com.cn/stock/quote/sha0.html 我需要循环取出(程序打印出也行)第一列和第2列的数据 比如 600000 普发银行 
    600001 邯郸钢铁 谢谢

解决方案 »

  1.   

    呵呵,以前刚刚做过。保存了一段代码。 public Hashtable<String, FormElements> httpParserRadioTable(String content) {
      Hashtable<String, FormElements> retHashTable = new Hashtable<String, FormElements>();
      //_advancedWirlessSettingsList.clear();  Parser myParser;
      NodeList nodeList = null;  myParser = Parser.createParser(content, "GBK");
      
      NodeFilter tableFilter = new NodeClassFilter(TableTag.class);
      //NodeFilter tableColumnFilter = new NodeClassFilter(TableColumn.class);
      //NodeFilter tableRowFilter = new NodeClassFilter(TableRow.class);  OrFilter lastFilter = new OrFilter();
      lastFilter
        .setPredicates(new NodeFilter[] { tableFilter });//,tableRowFilter, tableColumnFilter });
      try {
       nodeList = myParser.parse(lastFilter);
      } catch (ParserException e) {
       return null;
       // e.printStackTrace();
      }  Node[] nodes = nodeList.toNodeArray();
      for (int j = 0; j<nodes.length;j++)
      {
       TableTag tg = (TableTag) nodes[j];
       //  取得该table的所有行
       //System.out.println("-----------"+j);
       if(j==8)
       {
           TableRow[] tr = tg.getRows();
           //对每行内容解析
           for (int i = 1; i < tr.length; i++) {
            //取得某行的所有列
            TableColumn[] td = tr[i].getColumns();
         for (int k = 0; k < td.length; k++) {
          
          System.out.println(td[k].toPlainTextString());
         }
           }
       }
      }
      return retHashTable;
     } 
      

  2.   

    手工设定需要解析的table。。