/*
*编写人:符展维
*编写日期:2009.8.6
*函数功能:tool_抓取中国银行网页内容外汇*/
fcodeMap=nullexrateMap=null
readBankEXrateToUdate(
procreadBankEXrateToUdate(fcodeMap=newjava.util.Hashtable(exrateMap=newjava.util.Hashtable(putFcode(content=readBankEXrateInfo(content=getBankEXrateTableInf(contentgetBankEXrateTdInf(contentexrateCalcToUpdate(println(exrateMapendproc
procputFcode(sql="selectfname,fcodefromfcodewherefcode<>''"fcodeMap=snsoft.nbs.BusiPubl.sqlSelectTo(getEnvParams(,null,sql,"%0"fcodeMap.put("日元","日元,JPY".split(","fcodeMap.put("新西兰元","新西兰元,NZD".split(","endproc
procreadBankEXrateInfo(TotalString=""urlbco="http://www.boc.cn/sourcedb/whpj/index.html"urlbco="http://219.141.191.145/sourcedb/whpj/index.html"url=newjava.net.URL(urlbcoconnection=url.openConnection(connection.connect(urlStream=connection.getInputStream(reader=newjava.io.BufferedReader(newjava.io.InputStreamReader(urlStream,"UTF-8"sb=newjava.lang.StringBuilder(while((CurrentLine=reader.readLine(!=nullsb.append(CurrentLine+"\n"endwhileTotalString=sb.toString(readBankEXrateInfo=TotalStringendproc
procgetBankEXrateTableInf(contentcontent=content.substring(content.indexOf("id=\"documentContainer\""content=content.substring(0,content.indexOf(""content=content.substring(content.indexOf(""//println(contentgetBankEXrateTableInf=contentendproc
procgetBankEXrateTdInf(content//012345678title="货币名称,现汇买入价,现钞买入价,卖出价,基准价,中行折算价,发布日期,发布时间,-,".split(","content=content.replaceAll("",""//System.out.println(contenttrs=content.split("
"n=length(trs//println("-----------n-------------"+nfori=0ton-1//println("-----------tr---------------"//System.out.println(trs[i]trs[i]=trs[i].replaceAll("valign=\"middle\"bgcolor=\"#FFFFFF\"class='nav'>",""tds=trs[i].split(""obj=fcodeMap.get(tds[0].trim(ifobj!=nullxfcode=obj[1]xfcode!=null?exrateMap.put(xfcode,tds:nullendifforj=0tolength(tds-1innerText=""+tds[j]//println(j+"}"+title[j]+"="+innerText.trim(endforendforendproc/*
rexrate=681.76rmb/100
uexrate=(1155.55/(681.76/100/100
brexrate买入价人民币汇率buexrate买入价美元汇率srexrate卖出价人民币汇率suexrate卖出价美元汇率
在每个月的最后一个星期日取中间汇率
(brexrate+srexrate/2得到rexrate的值(buexrate+suexrate/2得到uexrate的值*/
procexrateCalcToUpdate(updateData=newsnsoft.dx.UpdateData(truedata=newjava.util.Hashtable(usdData=exrateMap.get("USD"busd=0susd=0xfdate=nullifusdData!=nullbusd=toNumber(usdData[1]susd=toNumber(usdData[3]