asp.net 獲取銀行貨幣匯率的代碼
更新時(shí)間:2010年12月28日 19:23:45 作者:
這個(gè)主要公司做外貿(mào)的每天都需要更新匯率,本來(lái)以前有一個(gè)服務(wù)可以調(diào)用,但是那個(gè)連接用不了 所以就寫了一個(gè)這樣的東西 套取網(wǎng)頁(yè)顯示信息
復(fù)制代碼 代碼如下:
class ExchangeRate
{
private const string _BASEURL = "網(wǎng)頁(yè)地址";
public const string CURRENCYCODE = "貨幣類型以'|'隔開(kāi)";//貨幣類型
public Hashtable GetValues()
{
Hashtable htReturn = new Hashtable();
string url = _BASEURL; //+ HttpUtility.UrlEncode(tmSet.ToString("yyyy/MM/dd", DateTimeFormatInfo.InvariantInfo));
WebClient wc = new WebClient();
string sHtml = wc.DownloadString(url);
string sXml = string.Empty;
int iValueCnt = CURRENCYCODE.Split(new char[] { '|' }, 10, StringSplitOptions.RemoveEmptyEntries).Length;
string[] sTBody = sHtml.Split(new string[] { "<tbody>", "</tbody>" }, StringSplitOptions.RemoveEmptyEntries);
foreach (string ss in sTBody)
{
if (ss.Contains("Currency Name"))
{
string[] sbrs = ss.Split(new string[] { "</tr>" }, StringSplitOptions.RemoveEmptyEntries);
foreach (string sbr in sbrs)
{
string scur = string.Empty;
double dRate = GetCurrencyRate(sbr, out scur);
if (dRate != 0.0 && !string.IsNullOrEmpty(scur))
{
htReturn.Add(scur, dRate * 0.01);
if (htReturn.Count >= iValueCnt)
break;
}
}
break;
}
}
return htReturn;
}
private double GetCurrencyRate(string source, out string sCurrency)
{
sCurrency = string.Empty;
string sPattern = @"<td.+?>(.+?)</td>";
foreach (Match m in Regex.Matches(source, sPattern))
{
string ss = m.Groups[1].Value;
if (IsNumeric(ss))
return double.Parse(ss);
else
{
if (CURRENCYCODE.Contains(ss))
sCurrency = ss.Trim();
else
break;
}
}
return 0.0;
}
public static bool IsNumeric(string str)
{
if (string.IsNullOrEmpty(str)) return false;
System.Text.RegularExpressions.Regex reg = new System.Text.RegularExpressions.Regex(@"^[-]?\d+[.|,]?\d*$");
return reg.IsMatch(str);
}
}
您可能感興趣的文章:
- C# .net實(shí)現(xiàn)貨幣轉(zhuǎn)換示例
- Java把數(shù)字格式化為貨幣字符串實(shí)例代碼
- SQL貨幣數(shù)字轉(zhuǎn)英文字符語(yǔ)句
- 用javascript判斷輸入數(shù)據(jù)是否貨幣并自動(dòng)添加¥符號(hào)的代碼
- javascript實(shí)現(xiàn)的平方米、畝、公頃單位換算小程序
- 進(jìn)制轉(zhuǎn)換算法原理(二進(jìn)制 八進(jìn)制 十進(jìn)制 十六進(jìn)制)
- php實(shí)現(xiàn)的樹(shù)形結(jié)構(gòu)數(shù)據(jù)存取類實(shí)例
- PHP使用get_headers函數(shù)判斷遠(yuǎn)程文件是否存在的方法
- php的mssql數(shù)據(jù)庫(kù)連接類實(shí)例
- PHP實(shí)現(xiàn)貨幣換算的方法
相關(guān)文章
asp.net實(shí)現(xiàn)根據(jù)城市獲取天氣預(yù)報(bào)的方法
這篇文章主要介紹了asp.net實(shí)現(xiàn)根據(jù)城市獲取天氣預(yù)報(bào)的方法,涉及asp.net調(diào)用新浪接口獲取天氣預(yù)報(bào)信息的實(shí)現(xiàn)技巧,非常簡(jiǎn)單實(shí)用,需要的朋友可以參考下2015-12-12ASP.NET MVC4使用MongoDB制作相冊(cè)管理
這篇文章主要介紹了ASP.NET MVC4使用MongoDB制作相冊(cè)管理的相關(guān)資料,感興趣的小伙伴們可以參考一下2016-07-07ASP.NET Core實(shí)現(xiàn)AES-GCM加密算法
這篇文章介紹了ASP.NET Core實(shí)現(xiàn)AES-GCM加密的方法,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-07-07.Net中如何操作IIS的虛擬目錄原理分析及實(shí)現(xiàn)方案
編程控制IIS實(shí)際上很簡(jiǎn)單,和ASP一樣,.Net中需要使用ADSI來(lái)操作IIS,但是此時(shí)我們不再需要GetObject這個(gè)東東了,因?yàn)镹et為我們提供了更加強(qiáng)大功能的新東東2012-12-12asp.net(vb)實(shí)現(xiàn)金額轉(zhuǎn)換成大寫的函數(shù)
asp.net(vb)實(shí)現(xiàn)金額轉(zhuǎn)換成大寫的函數(shù)代碼,需要的朋友可以參考下。2011-10-10.net如何優(yōu)雅的使用EFCore實(shí)例詳解
這篇文章主要為大家介紹了.net如何優(yōu)雅的使用EFCore實(shí)例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-11-11利用委托把用戶控件的值顯示于網(wǎng)頁(yè)案例應(yīng)用
用戶控件(UserControl)是集成一個(gè)功能,需要處理好的數(shù)據(jù),然后存數(shù)據(jù)庫(kù)中并顯示于網(wǎng)頁(yè)上,讓用戶能檢測(cè)到處理的數(shù)據(jù)情況,接下來(lái)將介紹利用委托把用戶控件的值顯示于網(wǎng)頁(yè)上,感興趣的朋友可以了解下2013-02-02