2025-08-29 01:23
Tags: 확장자
CSV
-
쉼표로 데이터 구분하는 순수한 텍스트 파일 형식
-
단순함과 범용성으로 엑셀, 데이터베이스, 프로그래밍 등 광범위하게 사용됨
-
필드 (Field): 데이터의 개별 값 하나하나를 의미합니다. ‘홍길동’, ‘30’, ‘서울’ 등이 각각의 필드.
-
레코드 (Record): 관련된 필드들의 모음을 의미하며, 보통 하나의 행(Row)으로 표현. 예를 들어, 한 사람의 정보인 ‘홍길동,30,서울’이 하나의 레코드.
-
구분자 (Delimiter): 필드들을 서로 나누는 역할을 하는 문자. 이름 그대로 CSV에서는 주로 쉼표(
,
)가 사용.
이름,나이,거주지
홍길동,30,서울
김철수,25,부산
이영희,28,대전
상황 | 규칙 | 예시 |
---|---|---|
기본 구조 | 필드는 쉼표(,)로, 레코드는 줄바꿈으로 구분 | 홍길동,30,서울 |
헤더 | 첫 번째 행에 각 열의 제목을 기입 (권장) | 이름,나이,거주지 |
필드에 쉼표 포함 | 필드 전체를 큰따옴표(" )로 감싼다 | "서울, 대한민국" |
필드에 줄바꿈 포함 | 필드 전체를 큰따옴표(" )로 감싼다 | "안녕하세요.\n반갑습니다." |
필드에 큰따옴표 포함 | 큰따옴표를 두 번("" ) 연속으로 쓴다 | "그는 ""천재""였다" |
특징 | CSV (Comma-Separated Values) | JSON (JavaScript Object Notation) | XML (eXtensible Markup Language) |
---|---|---|---|
구조 | 2차원 표 (행과 열) | Key-Value 쌍, 계층 구조 | 태그 기반의 트리 구조 |
가독성 | 매우 높음 (단순한 표 형태) | 높음 (사람이 읽기 편함) | 중간 (태그가 많아 복잡해 보일 수 있음) |
데이터 타입 | 없음 (모든 것을 텍스트로 취급) | 문자열, 숫자, 불리언, 배열, 객체 지원 | 없음 (모든 것을 텍스트로 취급, 스키마 정의 시 가능) |
용량 | 매우 가벼움 | 가벼움 | 상대적으로 무거움 (여닫는 태그 때문에) |
주요 용도 | 표 형태 데이터, 데이터베이스 덤프, 로그 | 웹 API, 설정 파일, 복잡한 데이터 구조 | 웹 서비스, 문서 형식 정의, 오래된 시스템 |
비유 | 깔끔한 스프레드시트 | 잘 정리된 사전 | 주석이 많은 공식 문서 |