Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Java

Tầm quan trọng của JSONTokener trong Java

Lớp JSONTokener cho phép ứng dụng tách chuỗi thành các token. Nó được dùng bởi constructor của JSONObject và JSONArray để parse chuỗi nguồn JSON. Một số phương thức quan trọng của JSONTokener:

  • back() - di chuyển con trỏ lùi 1 vị trí
  • more() - trả về true nếu còn token, false nếu hết
  • next() - trả về ký tự tiếp theo tại vị trí hiện tại
  • nextTo(character) - trả về chuỗi cho đến khi gặp ký tự chỉ định

Cú pháp

public class JSONTokener extends java.lang.Object

Ví dụ minh họa

import java.io.*;
import org.json.*;

public class JSONTokenerTest {
    public static void main(String args[]) throws JSONException, Exception {
        String jsonStr = "{"
            + " \"Technology\": \"Java\", "
            + " \"location\": [ Madhapur, Hyderabad ] "
        + "}";
        
        JSONTokener jsonToken = new JSONTokener(jsonStr);
        jsonToken.next(); // {
        jsonToken.next(); // space
        jsonToken.next(); // "
        jsonToken.next(); // T
        jsonToken.next(); // e
        char c = jsonToken.next(); // c
        jsonToken.back(); // lùi về 'e'
        boolean b = jsonToken.more(); // true
        String s = jsonToken.nextTo('i'); // đọc đến 'i'
        
        System.out.println("next character: " + c);       // c
        System.out.println("has more tokens: " + b);      // true
        System.out.println("next to i: " + s);            // Technology": "Java", "locat
    }
}

Kết quả

next character: c
has more tokens: true
next to i: Technology": "Java", "locat

Lưu ý: JSONTokener là low-level parser, ít khi dùng trực tiếp. Thường dùng new JSONObject(string) hoặc new JSONArray(string) tự động dùng JSONTokener bên dưới. Hữu ích khi cần parse thủ công hoặc streaming parse không load toàn bộ JSON.