.XLS 파일이란?
확장자가 XLS인 파일은 Excel 이진 파일 형식을 나타냅니다. 이러한 파일은 Microsoft Excel뿐만 아니라 OpenOffice Calc 또는 Apple Numbers와 같은 기타 유사한 스프레드시트 프로그램으로 만들 수 있습니다. Excel에서 저장한 파일을 통합 문서라고 하며 각 통합 문서에는 하나 이상의 워크시트가 있을 수 있습니다. 데이터는 워크시트의 테이블 형식으로 사용자에게 저장 및 표시되며 숫자 값, 텍스트 데이터, 수식, 외부 데이터 연결, 이미지 및 차트에 걸쳐 있을 수 있습니다. Microsoft Excel과 같은 응용 프로그램을 사용하면 통합 문서 데이터를 PDF, CSV, XLSX, TXT, HTML, XPS 및 기타 여러 가지가 있습니다. XLS 파일 형식은 Microsoft Excel 2007 릴리스와 함께 보다 개방적이고 구조화된 형식인 XLSX로 대체되었습니다. 최신 버전은 여전히 XLS 파일 생성 및 읽기에 대한 지원을 제공하지만 XLSX가 현재 가장 먼저 사용되는 선택입니다.
약력
XLS는 Microsoft Excel에서 사용하기 위해 Microsoft에서 만들었으며 BIFF(Binary Interchange File Format)라고도 합니다. 이 파일 형식은 1987년 Windows용 Excel에 포함되어 처음 도입되었습니다. XLS 파일 형식 사양은 2008년 6월 Revision 1로 처음 공개되었습니다. 이후 사양이 지속적으로 업데이트되어 최신 버전을 사용할 수 있습니다. 개정 8.0으로 표시된 2018년 8월 기준입니다. 다양한 버전의 XLS 파일 형식에 대한 간략한 역사는 다음과 같습니다.
- 버전 7.0(오피스 95와 함께 출시): 이 엑셀 버전은 모든 버전 중 가장 강력하고 빠르며 내부 스트림 재작성이 32비트로 업데이트되었습니다.
- 버전 8(office 97과 함께 출시됨): VBA가 표준 언어로 도입되었으며 제거된 자연어 레이블이 이 버전에서 처음으로 통합되었습니다. 또한 종이 클립 사무 도우미를 처음으로 도입했습니다.
- 버전 9(office 2000과 함께 출시): 이전에는 불가능했던 여러 개체를 종이 클립 사무실 도우미가 동시에 보유할 수 있는 버전 9의 약간의 변경만 있었습니다.
- 버전 10(오피스 XP와 함께 출시): 이 버전에는 눈에 띄는 개선 사항이 포함되어 있지 않습니다.
- 버전 11(오피스 2003과 함께 출시): 버전 11의 주요 업데이트, 엑셀 2003에는 새로운 테이블이 도입되었습니다.
XLS 파일 형식 사양
데이터는 [MS-CFB]에 설명된 대로 복합 파일 형태의 바이너리 스트림으로 XLS 파일에 배열됩니다. 데이터는 워크시트 정의와 같은 통합 문서 데이터를 포함하여 통합 문서의 콘텐츠 및 구조에 대한 정보가 포함된 저장소, 스트림 및 하위 스트림을 사용하여 복합 파일에 저장됩니다. 각 스트림 또는 하위 스트림에는 일련의 이진 레코드가 포함됩니다. 각 이진 레코드에는 통합 문서 데이터가 포함된 0개 이상의 구조화된 필드가 있습니다. 이 섹션에서는 XLS 파일 구조에 대한 간략한 개요를 제공하지만 자세한 파일 형식 사양은 [XLS 파일 형성 사양](https://msdn.microsoft.com/en-us/library/cc313154(v#office)을 참조해야 합니다. .12).aspx) Microsoft의 문서.
스트림 및 하위 스트림
통합 문서는 통합 문서 스트림으로 표시됩니다. 통합 문서의 각 워크시트는 하위 스트림으로 표시됩니다. 또한 글로벌 하위 스트림을 따르는 차트 시트 하위 스트림, 매크로 시트 하위 스트림 또는 대화 상자 시트 하위 스트림이 있습니다. 통합 문서 데이터를 포함하는 각 이진 스트림 또는 하위 스트림은 일련의 이진 레코드로 작성되어야 합니다(MUST).
기록
통합 문서의 기능에 대한 정보는 가변 길이 바이트 시퀀스인 레코드로 저장됩니다. 이진 레코드는 다음 세 가지 구성 요소로 구성됩니다.
레코드 유형: 레코드 유형은 레코드에 의해 지정되는 정보 유형과 이 레코드에 특정한 레코드 데이터의 구조가 정렬되고 구조화되는 방법을 지정하는 2바이트 부호 없는 정수입니다. 레코드 유형 값은 레코드 열거(섹션 2.3)의 값이거나 레코드가 미래 레코드 아키텍처(섹션 2.1.6)를 사용해야 합니다(MUST).
레코드 크기: 레코드 크기는 레코드 데이터의 총 크기를 지정하는 바이트 수를 지정하는 2바이트 부호 없는 정수입니다. 레코드 크기는 0보다 크거나 같아야 하고 8224보다 작거나 같아야 합니다(MUST).
레코드 데이터: 레코드 데이터 구성 요소에는 특정 레코드 유형에 해당하고 레코드의 나머지 부분을 구성하는 필드가 포함됩니다. 주어진 레코드 유형에 대한 필드의 순서와 구조는 해당 레코드 유형에 대한 해당 섹션에 지정됩니다. 레코드 데이터 구성요소의 크기는 레코드 크기와 같아야 합니다(MUST). 레코드 데이터 구성 요소의 필드에는 단순 값, 값 배열, 여러 필드의 구조, 필드 배열 및 구조 배열이 포함될 수 있습니다.
셀 테이블
셀은 텍스트, 수식 및 숫자 데이터와 같은 통합 문서 내용을 저장하는 통합 문서의 기본 블록입니다. 셀은 셀 테이블이라는 데이터 구조를 통해 저장된 데이터의 기록을 유지합니다. 셀 테이블 자체는 사양 문서에 정의된 CELLTABLE 규칙을 준수하는 레코드 시퀀스에 저장됩니다. 행이 행 블록으로 배열되는 일련의 행 블록으로 구성됩니다. 각 행 블록에는 데이터가 포함된 첫 번째 행부터 데이터가 포함된 마지막 행까지의 행이 포함됩니다.
데이터 또는 행 형식은 각 행 블록에 대한 행 레코드에 저장됩니다. 데이터 또는 개별 셀 서식이 포함된 모든 셀은 레코드로 표시됩니다. 셀과 연결된 서식은 개별 셀 서식, 행 서식, 열 서식 또는 기본 셀 서식에서 파생될 수 있습니다. 서식의 우선 순위는 가장 높은 우선 순위를 가진 개별 셀 서식, 행 서식, 열 서식, 기본 셀 서식 순입니다. 데이터를 포함하지 않고 개별 서식을 포함하지 않는 셀은 저장되지 않습니다.
수식
수식은 함께 새 값을 생성하는 셀의 값, 셀 참조, 이름, 함수 또는 연산자의 시퀀스입니다. 수식은 “분석된 표현식"이라고 하는 토큰화된 표현에 저장됩니다. 구문 분석된 표현식은 표시 및 사용자 편집을 위해 런타임 시 텍스트 공식으로 변환됩니다. 셀 수식은 수식 레코드에 의해 지정됩니다. 배열 수식은 배열 레코드로 지정됩니다. 공유 수식은 ShrFmla 레코드로 지정됩니다.
차트
차트 시트는 데이터 또는 데이터 집합 간의 관계를 시각적 형식으로 표시하는 그래픽인 차트를 지정하고 차트 데이터 캐시, 차트 데이터에 사용되는 데이터의 로컬 복사본이 누락되었거나 외부 링크가 없는 경우 데이터 소스가 손상되었습니다. 차트는 하나 또는 두 개의 축 그룹, 차트 데이터가 그려지는 축 집합, 차트에 지정된 계열, 추세선 및 오차 막대 집합을 지정합니다. 각 축 그룹은 데이터를 표시하는 데 사용되는 시각화 유형을 지정하는 1~4개의 차트 그룹을 지정합니다. 각 계열, 추세선 및 오차 막대는 연결된 차트 그룹을 지정합니다.
메타데이터
메타데이터는 특정 셀 또는 해당 콘텐츠와 관련된 추가 데이터입니다. 메타데이터는 향후 확장 목적으로만 BIFF8에 기록됩니다.
피벗 테이블
피벗 테이블은 원본 데이터를 요약하여 해당 데이터의 분포에 대한 개요를 가져오는 메커니즘입니다. 피벗 테이블에서 원본 데이터의 해당 열은 데이터를 요약하는 데 사용할 수 있는 필드가 됩니다. 피벗 테이블의 원본 데이터가 OLAP 원본 데이터인 경우 OLAP 계층 및 일부 다른 OLAP 엔터티는 피벗 테이블의 필드가 됩니다. 피벗 테이블에는 피벗 캐시와 피벗 테이블 보기라는 두 가지 주요 부분이 있습니다. 단일 비 OLAP PivotCache를 기반으로 하는 여러 개의 피벗 테이블 보기가 있을 수 있습니다.
스타일
이 개요에서는 시트(1)의 셀에 대한 서식 지정 및 보호 정보를 지정하는 방법에 대해 설명합니다. 셀 서식은 다음과 같은 여러 속성 집합으로 구성됩니다.
- 글꼴 속성(굵게, 기울임꼴, 글꼴 색상, 글꼴 크기 등…)
- 채우기 속성(전경, 배경색, 패턴, 그라데이션 등…)
- 정렬 속성(왼쪽, 가운데, 오른쪽 정렬 등…)
- 테두리 속성(왼쪽, 오른쪽, 위쪽, 아래쪽, 두껍게 또는 가늘게, 색상 등…)
- 숫자 서식 속성(날짜, 시간, 소수 자릿수 등…)
- 보호 속성(잠김, 숨김 등…)
이러한 속성은 전체적으로 특정 셀이 표시되고 인쇄되는 방식을 설명합니다.