반응형
* VBNET 한국 수출입 은행 공공데이터를 이용한 대출 금리 정보 가져 오기 예제...
- 사용한 컨트롤 : DateTimepicker 1개, Button 1개, Label 4개
전체 소스 코드
Form1.vb
Imports System.Runtime.InteropServices
Imports System.Net
Imports System.IO
Imports System.Net.Json
Public Class Form1
Private Sub button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles button1.Click
'AP01 : 환율, AP02 : 대출금리, AP03 : 국제금리
Dim strURL As String = "https://www.koreaexim.go.kr/site/program/financial/interestJSON?authkey=" + _
"DhvTGvqzZYg58GZMbo0C2eBhOHnLtj10&searchdate=" + _
dtp.Value.ToString("yyyyMMdd") + "&data=" + _
"AP02"
Dim hwr As HttpWebRequest = WebRequest.Create(strURL)
hwr.ContentType = "application/json"
Using hwrResult As HttpWebResponse = CType(hwr.GetResponse(), HttpWebResponse)
Dim sr As Stream = hwrResult.GetResponseStream()
Using srd As StreamReader = New StreamReader(sr)
Dim strResult As String = srd.ReadToEnd()
Dim strErr As String = ""
If (Not StringToJson(strResult, strErr)) Then
MessageBox.Show(strErr, "확 인", MessageBoxButtons.OK, MessageBoxIcon.Asterisk)
End If
End Using
sr.Close()
hwrResult.Close()
End Using
End Sub
Private Function StringToJson(ByVal strTmp As String, ByRef strErr As String) As Boolean
If strTmp.Length < 3 Then
strErr = "영업일이 아닙니다. 확인 후 이용해 주세요."
Return False
End If
Dim jtr As JsonTextParser = New JsonTextParser()
'string 문자열 -> json 으로 변환
Dim jo As JsonObject = jtr.Parse(strTmp)
Dim jac As JsonArrayCollection = CType(jo, JsonArrayCollection)
Dim iRow As Integer = 0
Dim joc As JsonObjectCollection
For Each joc In jac
iRow += 1
If (joc("result").ToString().Contains("1")) Then
lbl1.Text = joc("sfln_intrc_nm").ToString().Split(":")(1).Replace("""", " ").Trim()
lbl2.Text = joc("int_r").ToString().Split(":")(1).Replace("""", " ").Trim()
End If
Next
Return True
End Function
End Class
아래의 그림과 같이 Button Click Event 를 살펴 보면
strURL 부분의 지워진 부분은 각자 한국 수출입 은행에서 받은 인증키를 입력 하면 됩니다.
출처: https://kdsoft-zeros.tistory.com/250 [삽질하는 개발자...]
https://kdsoft-zeros.tistory.com/247
https://kdsoft-zeros.tistory.com/98
* 예제 결과
반응형
'VB.NET Programming' 카테고리의 다른 글
[VBNET] [공공데이터] 환율 정보 가져오기... (0) | 2021.10.26 |
---|---|
[VBNET] [공공데이터] 코로나 확진자 현황 (0) | 2021.09.30 |
[VBNET] String Byte Char 변환 예제 (0) | 2021.08.30 |
[VBNET] [Control] Listview - Column Auto Size (컬럼 사이즈 자동 조절) 예제 (0) | 2021.07.16 |
[VBNET] 간단한 로또(Lotto) 당첨번호 확인 하기 (0) | 2021.06.17 |