어제 오늘 내일

[Java / json-simple ] JSON 파일 읽기 본문

IT/Java

[Java / json-simple ] JSON 파일 읽기

hi.anna 2021. 7. 17. 01:12

 

json-simple 라이브러리를 사용하여

JSON 파일을 읽고, 파싱하여 값을 읽어오는 방법을 소개합니다.

 

 

라이브러리 추가하기 (MAVEN)

JSON 파싱에 사용할 json-simple 라이브러리를 추가하기 위해

pom.xml 파일에 아래와 같이 dependency를 추가합니다.

    <dependency>
      <groupId>com.googlecode.json-simple</groupId>
      <artifactId>json-simple</artifactId>
      <version>1.1.1</version> 
    </dependency>

 

 

JSON 파일 읽기

  test.json 파일 준비  

{
    "name" : "apple",
    "id" : 1,
    "price" : 1000
}

읽어들일 JSON 파일을 준비합니다.

 

  test.json 파일 읽어서 파싱하기  

import java.io.FileReader;
import java.io.IOException;
import java.io.Reader;

import org.json.simple.JSONObject;
import org.json.simple.parser.JSONParser;
import org.json.simple.parser.ParseException;

public class ReadJsonFile {
    public static void main(String[] args) 
                            throws IOException, ParseException {

        JSONParser parser = new JSONParser();

        // JSON 파일 읽기
        Reader reader = new FileReader("C:\\code\\test.json");
        JSONObject jsonObject = (JSONObject) parser.parse(reader);

        String name = (String) jsonObject.get("name");
        long id = (Long) jsonObject.get("id");
        long price = (Long) jsonObject.get("price");

        System.out.println(name);  // apple
        System.out.println(id);  // 1
        System.out.println(price);  // 1000
        
    }
    
}

JSONObject jsonObject = (JSONObject) parser.parse(reader);

JSON 파일을 읽어서 파싱하기 위해

JSONObject 클래스의 parse() 메소드로 

JSON 파일을 읽어오는 Reader 객체를 전달하였습니다.

 

String name = (String) jsonObject.get("name");

JSONObject의 get() 메소드에 JSON에서 읽어올 프로퍼티명을 전달하여

프로퍼티의 값을 읽어옵니다.

 

 

반응형
Comments