VB.NET ile Merkez bankası döviz kurları nasıl elde edilir?

Vatansever

Asistan
Katılım
23 Ağustos 2007
Mesajlar
405
Reaksiyon puanı
1
Puanları
18
internette merkez bankası döviz kurlarını elde etmek için kod buldum ama çalıştıramadım bu kodu çalıştırmama yardım edebilirmisiniz?

***********************************************************
1. Öncelikle XML kütüphanesinin formun en üstünde programa dahil edilmesi gerekir

Imports System.xml

2. Daha sonra aşağıdaki gibi bir fonksiyon tanımlanabilir. Fonksiyon, DataTable türünde bir değer döndürmektedir

Private Function Kurlar() As DataTable

Dim DT As New DataTable
Dim myUrl As String = "http://www.tcmb.gov.tr/kurlar/today.xml"
Dim myxml As New XmlDocument
Dim dr As DataRow

Dim tarih As XmlNode
Dim mylist, adi, kod As XmlNodeList
Dim doviz_alis, doviz_satis As XmlNodeList
Dim efektif_alis, efektif_satis As XmlNodeList

myxml.Load(myUrl)

DT.Columns.Add("Cinsi")
DT.Columns.Add("Kisaltma")
DT.Columns.Add("Alis")
DT.Columns.Add("Satis")
DT.Columns.Add("Efektif Alis")
DT.Columns.Add("Efektif Satis")

tarih = myxml.SelectSingleNode("/Tarih_Date/[MENTION=85595]Tarih[/MENTION]")
mylist= myxml.SelectNodes("/Tarih_Date/Currency")
adi = myxml.SelectNodes("/Tarih_Date/Currency/Isim")
kod = myxml.SelectNodes("/Tarih_Date/Currency/@Kod")
doviz_alis = myxml.SelectNodes("/Tarih_Date/Currency/ForexBuying")
doviz_satis = myxml.SelectNodes("/Tarih_Date/Currency/ForexSelling")
efektif_alis = myxml.SelectNodes("/Tarih_Date/Currency/BanknoteBuying")
efektif_satis = myxml.SelectNodes("/Tarih_Date/Currency/BanknoteSelling")

For i As Integer = 0 To 18
dr = DT.NewRow
dr(0) = adi.Item(i).InnerText.ToString()
dr(1) = kod.Item(i).InnerText.ToString()
dr(2) = Replace(doviz_alis.Item(i).InnerText.ToString(), ".", ",")
dr(3) = Replace(doviz_satis.Item(i).InnerText.ToString(), ".", ",")
dr(4) = Replace(efektif_alis.Item(i).InnerText.ToString(), ".", ",")
dr(5) = Replace(efektif_satis.Item(i).InnerText.ToString(), ".", ",")
DT.Rows.Add(dr)
Next

Return DT
End Function


Replace(doviz_alis.Item(i).InnerText.ToString(), ".", ",") : Burada stringdeki noktalar virgüle çevriliyor ve sütunlara yerleştiriliyor.

3. Son olarak, döviz kurları için kullanacağınız DataGridView nesnesinin DataSource özelliğini, yukarıdaki fonksiyonun adı olarak atamanız gerekiyor :

...
DataGridView1.DataSource = Kurlar()
...
***********************************************************
 

gevezece54

Öğrenci
Katılım
13 Ekim 2010
Mesajlar
2
Reaksiyon puanı
0
Puanları
0
arkadaşım merhaba

For i As Integer = 0 To 18

satırını

For i As Integer = 0 To 16
olarak düzeltirsen kodlar çalışıyor.

birde öyle dene
 

Vatansever

Asistan
Katılım
23 Ağustos 2007
Mesajlar
405
Reaksiyon puanı
1
Puanları
18
Teşekkür ederim dediğini yaptım oldu çalışıyor sağol
 
Üst