Android-JSON

4255 단어
JSON이 뭐야?
JSON(JavaScript Object Notation, JS 객체 약보)은 경량 데이터 교환 형식입니다.이것은 ECMAScript(유럽컴퓨터협회에서 제정한 js규범)의 하위 집합을 바탕으로 프로그래밍 언어에 완전히 독립된 텍스트 형식으로 데이터를 저장하고 표시한다.간결하고 뚜렷한 차원 구조로 인해 JSON은 이상적인 데이터 교환 언어가 되었다.읽기 쉽고 쓰기 쉬우며 기계 해석과 생성도 쉬우며 네트워크 전송 효율을 효과적으로 향상시킨다.
JSON 구문 규칙: 객체는 키 값으로 표시되고 데이터는 쉼표로 구분된 괄호로 저장됩니다. 객체는 대괄호로 저장됩니다. 배열은 쉼표로 구분됩니다.
JSON은 두 가지 구조가 있어요.
1. 대상: 대상은 js에서'{}'로 확대된 내용을 표시하고 데이터 구조는 {key:value, key:value,...}의 키 값이 맞는 구조로 대상을 대상으로 하는 언어에서 키는 대상의 속성,value는 대응하는 속성 값이기 때문에 쉽게 이해할 수 있고 값을 얻는 방법은 대상이다.키는 속성 값을 가져옵니다. 이 속성 값의 유형은 숫자, 문자열, 그룹, 대상 몇 가지가 될 수 있습니다.
2. 수조: 수조는 js에서 중괄호'[]'로 확대된 내용으로 데이터 구조는 ['java','javascript','vb','vb','vb'로 되어 있다. 값을 얻는 방식은 모든 언어와 마찬가지로 인덱스로 얻을 수 있다. 필드 값의 유형은 숫자, 문자열, 수조, 이미지 몇 가지가 될 수 있다.
JSONObject 구문 분석 방법
 public static Person getPerson(String key, String jsonString) {
        Person person = new Person();
        try {
            JSONObject jsonObject = new JSONObject(jsonString);
            JSONObject personObject = jsonObject.getJSONObject("person");
            person.setId(personObject.getInt("id"));
            person.setName(personObject.getString("name"));
            person.setAddress(personObject.getString("address"));
        } catch (Exception e) {
            // TODO: handle exception
        }
        return person;
    }

JSONarray 해석 방법
 private void parseJson(){
        String json_str="[ {\"name\":\"  \",\"age\":21,\"info\":{\"class\":\"    \",\"id\":2016001}}, {\"name\":\"  \",\"age\":22,\"info\":{\"class\":\"    \",\"id\":2016002}}]";
        try {
            JSONArray jsonArray=new JSONArray(json_str);
            JSONObject jsonObject=jsonArray.getJSONObject(1);
            JSONObject jsonObject1=jsonObject.getJSONObject("info");
            String className=jsonObject1.getString("class");
            int id=jsonObject1.getInt("id");
            json_tv_age.setText(id+"");
            json_tv_show.setText(className);

        } catch (JSONException e) {
            e.printStackTrace();
        }
    }

좋은 웹페이지 즐겨찾기