記事検索

検索ワードを入力してください。
Sky Tech Blog
Excelファイルを​解凍する

Excelファイルを​解凍する

Excelファイルを解凍してXML形式でデータを確認する方法について説明します。Excelファイルを作成する処理を入れたが作成したファイルが壊れてしまう場合などに、XMLを確認することで原因の調査を行うことができます。

普段業務でよく使われるExcelファイルですが、ファイル自体を解凍できるということはあまり知られていないかもしれません。

Microsoft Office(Office 2007以降)のファイルは、XMLで記述された規格を標準ファイル形式として採用されています。
※Office Open XML

やり方は簡単。
拡張子の「xlsx」を「zip」に変更して解凍するだけです。

  1. 以下のようなExcelファイルを作成

  1. 拡張子を「xlsx」⇒「zip」に変更

  1. 解凍します

xlフォルダ内の「sharedStrings.xml」には入力された文字列がありました。

mediaフォルダには貼り付けた画像もあります。
(画像が個別に取得できるので活用シーンはあるかも?)

Open XMLについて軽く触れますと、以下の内容が説明されています。

Open XML ファイルは、パッケージ化および圧縮され ZIP アーカイブに格納されます。
ZIP ビューアーを使用して、Open XML ファイルの構造を表示できます。
Open XML ドキュメントは、複数のドキュメント パーツで構築されています。
ドキュメント パーツ間のリレーションシップは、それぞれのパーツに格納されています。
ZIP 形式は、各パーツへのランダム アクセスをサポートしています。
たとえば、アプリケーションは、プレゼンテーション間で、スライドのコンテンツを解析することなくスライドを移動できます。
同様に、アプリケーションは、ワープロ ドキュメントのすべてのコメントを、そのコンテンツを解析することなく削除できます。

Open XML パッケージのドキュメント パーツは、XML マークアップとして作成されます。
XML は、構造化されたプレーンテキストなので、テキスト リーダーを使用してドキュメント パーツのコンテンツを表示したり、XPath などのプロセスを使用してコンテンツを解析したりできます。

構造的には、Open XML ドキュメントは Open Packaging Conventions (OPC) パッケージです。
前述のとおり、パッケージはドキュメント パーツの集合で構成されています。
各パーツには、セグメントのシーケンスまたは "/word/theme/theme1.xml" などのパス名で構成されるパーツ名があります。
パッケージには[Content_Types].xml パーツが含まれています。
これにより、パッケージ内のすべてのドキュメント パーツのコンテンツ タイプを決定できます。
ソース パッケージまたはパーツの明示的なリレーションシップのセットは、最後に .rels という拡張子が付くリレーションシップ パーツに含まれています。

こちらですが、ExcelだけでなくWordやPowerPointでも、同様に解凍してXMLを確認することができます。

ファイルを構成するXMLを見るケースはあまり多くないかもしれませんが、開発要件の中にはExcelファイルを作成するような処理が必要になる場合があります。
不具合などで作成したファイルが壊れてしまう場合、作られたファイルのどこがよくないのか調査するときなどに使えるのではないでしょうか。

以上、ちょっとした小ネタでした。


XFacebookLINE
キャリア採用募集中!

入社後にスキルアップを目指す若手の方も、ご自身の経験を幅広いフィールドで生かしたいベテランの方も、お一人おひとりの経験に応じたキャリア採用を行っています。

Sky株式会社のソフトウェア開発や製品、採用に関するお問い合わせについては、下記のリンクをご確認ください。
お問い合わせ
ホーム