So sánh latlng là mylatlng trong năm 2024
Trong quá trình phát triển ứng dụng sẽ cần lưu trữ dữ liệu hoặc cần giao tiếp, truyền nhận dữ liệu từ nhiều thiết bị, việc chuyển đổi dữ liệu thành dạng văn bản sẽ giúp thuận tiện cho quán trình này. Để hỗ trợ cho điều này JSON ra đời, ngoài ra còn có nhiều phương pháp chuyển đổi sang nhiều loại cấu trúc với cú pháp khác nhau như XML hoặc mỗi ngôn ngữ lập trình có thể hỗ trợ riêng cách thức của ngôn ngữ đó. JSON là gì?JSON là tên viết tắt của JavaScript Object Notation, là 1 chuẩn để lưu trữ và chuyển đổi dữ liệu và thuận tiện, JSON rất dễ đọc và dễ phân tích. Cấu trúc của JSONCấu trúc của JSON, được bắt đầu bằng kí tự 0 và kết thúc bằng kí tự 1. Trong 2 sẽ định nghĩa những đối tượng. Ví dụ định nghĩa 1 đối tượng 3 có tên là 4 và họ là 5 thì chuỗi JSON được biểu diễn như sau: {"firstName": "Khoa", "lastName": "Vo"} Biểu diễn danh sách các 6: {employees: [ ]}So sánh với cấu trúc XML: Hay 1 chuỗi JSON phức tạp sẽ sử dụng để 7 trong bài viết này là: {"widget": { "debug": "on", "window": { "title": "Sample Konfabulator Widget", "name": "main_window", "width": 500, "height": 500 }, "image": { "src": "Images/Sun.png", "name": "sun1", "hOffset": 250, "vOffset": 250, "alignment": "center" }, "text": { "data": "Click Here", "size": 36, "style": "bold", "name": "text1", "hOffset": 250, "vOffset": 100, "alignment": "center", "onMouseUp": "sun1.opacity = (sun1.opacity / 100) * 90;" } }} Cấu trúc biểu diễn bằng XML: Biểu diễn 1 nội dung như nhau nhưng JSON gọn hơn XML, so sánh về tốc độ parse thì JSON nhanh hơn rất nhiều so với XML. Thao tác với JSON trong AndroidTrong Android, các thư viện dùng để thao tác với JSON nằm trong package 8. Đọc JSON trong AndroidCùng phân tích chuỗi JSON để parse thành các đối tượng trong Java. {"widget": { "debug": "on", "window": { "title": "Sample Konfabulator Widget", "name": "main_window", "width": 500, "height": 500 }, "image": { "src": "Images/Sun.png", "name": "sun1", "hOffset": 250, "vOffset": 250, "alignment": "center" }, "text": { "data": "Click Here", "size": 36, "style": "bold", "name": "text1", "hOffset": 250, "vOffset": 100, "alignment": "center", "onMouseUp": "sun1.opacity = (sun1.opacity / 100) * 90;" } }} Có tất cả 4 đối tượng:
Các bước parse như sau: Bước 1: tạo đối tượng {"widget": { "debug": "on", "window": { "title": "Sample Konfabulator Widget", "name": "main_window", "width": 500, "height": 500 }, "image": { "src": "Images/Sun.png", "name": "sun1", "hOffset": 250, "vOffset": 250, "alignment": "center" }, "text": { "data": "Click Here", "size": 36, "style": "bold", "name": "text1", "hOffset": 250, "vOffset": 100, "alignment": "center", "onMouseUp": "sun1.opacity = (sun1.opacity / 100) * 90;" } }} 3 với đối số truyền vào là chuỗi JSON trên. String json = "{\"widget\": {\n" + try { } catch (JSONException e) { }Bước 2: lấy {"widget": { "debug": "on", "window": { "title": "Sample Konfabulator Widget", "name": "main_window", "width": 500, "height": 500 }, "image": { "src": "Images/Sun.png", "name": "sun1", "hOffset": 250, "vOffset": 250, "alignment": "center" }, "text": { "data": "Click Here", "size": 36, "style": "bold", "name": "text1", "hOffset": 250, "vOffset": 100, "alignment": "center", "onMouseUp": "sun1.opacity = (sun1.opacity / 100) * 90;" } }} 3 widget. JSONObject widgetObject = rootObject.getJSONObject("widget"); Bước 3: Lấy ra tất các thuộc tính, nếu là 1 đối tượng thì phải tạo {"widget": { "debug": "on", "window": { "title": "Sample Konfabulator Widget", "name": "main_window", "width": 500, "height": 500 }, "image": { "src": "Images/Sun.png", "name": "sun1", "hOffset": 250, "vOffset": 250, "alignment": "center" }, "text": { "data": "Click Here", "size": 36, "style": "bold", "name": "text1", "hOffset": 250, "vOffset": 100, "alignment": "center", "onMouseUp": "sun1.opacity = (sun1.opacity / 100) * 90;" } }} 3 và lấy thuộc tính bởi các phương thức: |