컴공생의 다이어리

데이터 포맷(XML, JSON, CSV) 본문

Development/기타

데이터 포맷(XML, JSON, CSV)

컴공 K 2022. 1. 2. 00:01

데이터 포맷(XML, JSON, CSV)

데이터 크기 : XML > JSON > CSV

  XML JSON CSV
장점 ‣  XML은 3가지 포맷중 가장 직관적
‣ 메타 정보를 제공해서 정보 표현 이상의 효과를 가져올 수 있음
모양과 규칙 자체가 단순해서 타 언어에서도 구현하기가 쉬움 ‣  용량이 가장 작음
‣  csv는 용량이 작기 때문에 변하지 않는 많은 양의 데이터를 제공할 때 주로 이용이 가능
단점 실제 전송하는 정보보다 메타 데이터의 크기가 더 커질 수 있음 콤마가 누락되거나 중괄호가 잘못 닫히는 등 문법 오류에 취약하다. 데이터가 많아지면 어떤 데이터가 항목을 나타내는지 가시화가 어려움
주요
사용처
단순 게임 옵션, 직접 데이터 수정이 잦은 부분에 사용 서버 통신 REST API를 사용할 때 가장 많이 사용 간단한 테이블 작성 또는 읽는 속도가 중요한 부분에서 사용

 

 

XML(eXtensible Markup Language)

XML은 데이터를 표현하기 위해 많이 사용되는 방식으로 HTML과 유사한 구조를 가지고 있다. 다목적 마크업 언어로 태그 등을 이용하여 데이터의 구조를 기술하는 언어이다. HTML의 태그와 같이 꺽쇠(<>)를 사용하고 트리 계층 구조를 사용하여 루트 요소부터 시작해 여러개의 자식을 계층적으로 포함한다. XML의 예시는 아래와 같다.

<?xml version="1.0" encoding="UTF-8"?>
<users>
  <user>
    <name>강호동</name>
    <score>89</score>
    <hobby>
      <element>Soccer</element>
      <element>Ninza</element>
    </hobby>
  </user>

  <user>
    <name>유재석</name>
    <score>19</score>
    <hobby>
      <element>Sing</element>
      <element>Dancing</element>
    </hobby>
  </user>
</users>

 

 

JSON(JavaScript Object Notation)

JSON은 XML과 비슷하게 데이터를 처리하기 위한 형식으로, '속성- 값 쌍' 또는'키 -값 쌍'으로 이루어진 데이터 오브젝트를 전달하기 위한 인간이 읽을 수 있는 텍스트를 사용하는 개방형 포준 포맷이다. 일반적으로 서버와의 통신 규약인 REST API를 사용할 때 가장 많이 사용된다. 모든 프로그래밍 언어에서 JSON 형식을 지원해서 최근에는 XML을 대체해서 많이 사용된다.

{
  "users": {
    "user": [
      {
        "name": "강호동",
        "score": 89,
        "hobby": ["Soccer", "Ninza"]
      },
      {
        "name": "유재석",
        "score": 19,
        "hobby": ["Sing", "Dancing"]
      }
    ]
  }
}

 

 

CSV

csv 형식은 쉼표를 기준으로 항목을 구분하여 저장한 데이터를 말한다. DB나 표 계산 소프트웨어 데이터를 보존하기 위해 이런 형식을 사용한다. 각 항목이나 판매 내용마다 쉼표(comma)로 구분하여 기록한다.

name, score, hobby
강호동, 89, (Soccer,Ninza)
유재석, 19, (Sing,Dancing)

 

 

 

 

 

 

https://loosie.tistory.com/197

 

데이터 포맷 설명 및 비교 (XML, JSON, CSV)

각 포맷 장단점 및 비교 데이터 크기 : XML > JSON > CSV XML JSON CSV 장점 ‣ XML은 3가지 포맷중 가장 직관적이다. ‣ 메타 정보를 제공해서 정보 표현 이상의 효과를 가져올 수 있다. ‣  모양과 규칙

loosie.tistory.com

https://mommoo.tistory.com/17

 

XML 이란?

 오늘은 XML ( eXtensible Markup Language) 에 대해 포스팅 하겠다. 필자가 XML을 처음 본곳은 안드로이드 프로그래밍을 처음 접했을 때 이다. 안드로이드 프로그래밍은 기본적으로 JAVA언어를 채택하여

mommoo.tistory.com

 

728x90
Comments