- [DATABASE] Hướng dẫn thêm và cập nhật Extended Property Column trong Table Sqlserver
- [DEVEXPRESS] Hướng dẫn sử dụng Vertical Gridview để hiển thị thông tin sản phẩm
- [C#] Hướng dẫn sử dụng Json Schema để Validate chuỗi string có phải json
- [C#] Hướng dẫn sử dụng công cụ Clean Code trên Visual Studio
- [C#] Hướng dẫn Drag and Drop File vào RichTextBox
- [C#] Hướng dẫn tạo hiệu ứng Karaoke Text Effect Winform
- [C#] Sử dụng thư viện ZedGraph vẽ biểu đồ Line, Bar, Pie trên Winform
- [DATABASE] Hướng dẫn sort sắp xếp địa chỉ IP trên sqlserver sử dụng hàm PARSENAME
- [C#] Theo dõi sử kiện process Start hay Stop trên Winform
- [ASP.NET] Chia sẻ source code chụp hình sử dụng camera trên website
- [C#] Chạy ứng dụng trên Virtual Desktop (màn hình ảo) Winform
- [C#] Mã hóa và giải mã Data Protection API trên winform
- [C#] Hướng dẫn tạo Gradient Background trên Winform
- [DATABASE] Hướng dẫn convert Epoch to DateTime trong sqlserver
- [DATABASE] Hướng dẫn sử dụng STRING_AGG và CONCAT_WS trong sqlserver 2017
- [C#] Hướng dẫn Copy With All Property in Class Object
- [DEVEXPRESS] Hướng dẫn load Json DataSource vào GridView
- [C#] Hướng dẫn tạo chữ ký trên winform Signature Pad
- [DEVEXPRESS] Format code T-SQL highlight in RichEditControl
- [C#] Hướng dẫn upload file, hình ảnh từ Winform lên server API ASP.NET Core
[VB.NET] Hướng dẫn cách đọc dữ liệu Json trên Winform một cách dễ dàng nhanh chóng
Xin chào các bạn, bài viết hôm nay mình sẽ hướng dẫn các bạn cách đọc file json trong VB.NET Winform cách đơn giản và nhanh chóng.
[VB.NET] How to parse json string in Winform
Đầu tiên, mình xin giới thiệu về json
JSON (JavaScript Object Noattion) là 1 định dạng hoán vị dữ liệu nhanh. Chúng dễ dàng cho chúng ta đọc và viết. Dễ dàng cho thiết bị phân tích và phát sinh. Chúng là cơ sở dựa trên tập hợp của Ngôn Ngữ Lập Trình JavaScript, tiêu chuẩn ECMA-262 phiên bản 3 - tháng 12 năm 1999. JSON là 1 định dạng kiểu text mà hoàn toàn độc lập với các ngôn ngữ hoàn chỉnh, thuộc họ hàng với các ngôn ngữ họ hàng C, gồm có C, C++, C#, Java, JavaScript, Perl, Python, và nhiều ngôn ngữ khác. Những đặc tính đó đã tạo nên JSON 1 ngôn ngữ hoán vị dữ liệu lý tưởng.
JSON được xây dựng trên 2 cấu trúc:
- Là tập hợp của các cặp tên và giá trị name-value. Trong những ngôn ngữ khác nhau, đây được nhận thấy như là 1 đối tượng (object), sự ghi (record), cấu trúc (struct), từ điển (dictionary), bảng băm (hash table), danh sách khoá (keyed list), hay mảng liên hợp.
- Là 1 tập hợp các giá trị đã được sắp xếp. Trong hầu hết các ngôn ngữ, this được nhận thấy như là 1 mảng, véc tơ, tập hợp hay là 1 dãy sequence.
Một chuỗi json được bắt đầu bởi dấu "{" và kết thúc bởi dấu "}".
Có 2 loại json cơ bản:
- Json Object
- Json Array
I. Json Object:
Được chứa bởi cặp (Name và Value, cặp name và value cách nhau bởi dấu hai chấm (":"))
Cú pháp mẫu Json Object.
{"firstName":"John", "lastName":"Doe"}
II. Json Array:
Được bao bởi cặp dấu ngoặc vuông "[]"
Cú pháp mẫu Json Array.
"employees":[
{"firstName":"John", "lastName":"Doe"},
{"firstName":"Anna", "lastName":"Smith"},
{"firstName":"Peter", "lastName":"Jones"}
]
Hướng dẫn đọc dữ liệu Json trên VB.NET
Để đọc json mình dưới thiệu 3 công cụ và website sau:
1. Công cụ làm đẹp chuỗi json (https://codebeautify.org/jsonviewer)
2. Công cụ chuyển chuỗi Json Sang Class VB.NET or C#: Sử dụng Json Utils ở link => (http://www.jsonutils.com/)
3. Sử dụng thư viện Json.NET cài đặt vào Project bằng Nuget:
PM> Install-Package Newtonsoft.Json -Version 12.0.3
Bắt đầu thực hành đọc dữ liệu Json (Đọc chuỗi Json phức tạp bao gồm json object và json array).
VD: Chuỗi json demo.
{"id": "0001", "type": "donut", "name": "Cake", "ppu": 0.55, "batters": {"batter": [{ "id": "1001", "type": "Regular" }, { "id": "1002", "type": "Chocolate" }, { "id": "1003", "type": "Blueberry" }, { "id": "1004", "type": "Devil's Food" } ] }, "topping": [{ "id": "5001", "type": "None" }, { "id": "5002", "type": "Glazed" }, { "id": "5005", "type": "Sugar" }, { "id": "5007", "type": "Powdered Sugar" }, { "id": "5006", "type": "Chocolate with Sprinkles" }, { "id": "5003", "type": "Chocolate" }, { "id": "5004", "type": "Maple" } ] }
Video Demo đọc dữ liệu Json từng bước:
Bước 1: Tạo 1 class với tên clsJson.vb với source code bên dưới
Imports Newtonsoft.Json
Public Class clsJson
Public Class Batter
<JsonProperty("id")>
Public Property Id As String
<JsonProperty("type")>
Public Property Type As String
End Class
Public Class Batters
<JsonProperty("batter")>
Public Property Batter As Batter()
End Class
Public Class Topping
<JsonProperty("id")>
Public Property Id As String
<JsonProperty("type")>
Public Property Type As String
End Class
Public Class JsonDemo
<JsonProperty("id")>
Public Property Id As String
<JsonProperty("type")>
Public Property Type As String
<JsonProperty("name")>
Public Property Name As String
<JsonProperty("ppu")>
Public Property Ppu As Double
<JsonProperty("batters")>
Public Property Batters As Batters
<JsonProperty("topping")>
Public Property Topping As Topping()
End Class
End Class
Bước 2: Source code Full Form Main
Imports Newtonsoft.Json
Imports ReadJsonVB.clsJson
Public Class Form1
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim json As String = RichTextBox1.Text
Dim data = JsonConvert.DeserializeObject(Of JsonDemo)(json) 'Cái truyền tên Class vào
'DataGridView1.DataSource = data.Batters.Batter
DataGridView1.DataSource = data.Topping
Label2.Text = data.Id
Label3.Text = data.Type
Label4.Text = data.Name
Label5.Text = data.Ppu
End Sub
End Class
Thanks for watching!