DOC ファイル形式とは?
拡張子 .doc を持つファイルには、Microsoft Word の独自のバイナリ形式で保存された書式付きテキストドキュメントが含まれています。この形式は OLE2 Compound File Binary コンテナ(.xls や .ppt などのレガシー Office ファイルで共有されている構造化ストレージ)を使用しており、内部的には WordDocument ストリームによって識別されます。そのマジックバイト(D0 CF 11 E0 A1 B1 1A E1)はファイルの先頭に現れるため、ZIP ベースのアーカイブである新しい .docx と .doc を容易に区別できます。
形式の構造は Word のバージョンによって異なります。現代的な OLE2 ベースのレイアウトは Word 97 (1997) から始まり、Word 2003 までデフォルトとして使用されました。その後、より高い移植性を提供するために設計された XML ベースの .docx に大部分が取って代わられました。現在でも、Word やほとんどのワープロソフトで .doc ファイルを作成することは可能です。
.doc ファイルには以下が含まれる場合があります:
- テキストとその書式(フォント、スタイル、ページレイアウト)
- 表
- 画像および埋め込みオブジェクト
- マクロ(VBA スクリプト)
Microsoft が .doc 形式の仕様を公開したのは 2008 年のことで、これにより他のプログラムがこれらのファイルを適切に処理できるようになりました。それにもかかわらず、この形式はそれ以前にすべての詳細を把握するためにリバースエンジニアリングされていました。1983 年に Microsoft 独自の形式が登場する前は、.doc 拡張子はプレーンテキストファイルや WordPerfect プログラムのドキュメントにも使用されていました。同じバイナリ構造を共有するテンプレートファイルは .dot 拡張子を使用します。公式の MIME タイプは application/msword です。
セキュリティと安全性
リスク: MEDIUM.doc ファイルの本当のリスクは VBA マクロにあります。このバイナリ形式はマクロマルウェア(«コンテンツの有効化» フィッシング)の古典的な媒介となります。現代の Office は、メールやインターネットからの DOC ファイルをマクロが無効な「保護されたビュー」で開きます。心当たりのないドキュメントで編集やマクロを有効にしないでください。LibreOffice や Google ドキュメントで開く方が、マクロエンジンが Word の VBA と異なるため、一般的に安全です。ドキュメントのテキスト自体は無害ですが、埋め込まれたマクロやリンクされたオブジェクトのみが脅威となります。
形式の詳細
概要DOC ファイルを開くプログラム
技術的詳細
詳細仕様| コンテナ形式 | OLE2 Compound File Binary (CFB 構造化ストレージ) |
| マジックバイト | D0 CF 11 E0 A1 B1 1A E1 - ファイルオフセット 0 の 8 バイト |
| MIME タイプ | application/msword |
| 主要な内部ストリーム | WordDocument ストリームがメインのドキュメント内容と書式を保持 |
| サポートストリーム | 0Table または 1Table ストリームが文字列プール、オブジェクト参照、リビジョンデータを保存 |
| 文字エンコーディング | UTF-16 LE (Word 97-2003); 97 より前のバージョンでは ANSI コードページを使用 |
| マクロ言語 | ファイル内の埋め込み OLE2 Macros ストレージに保存された VBA マクロ |
| 圧縮 | なし - 非圧縮バイナリ。同等の .docx は通常 60-80% 小さくなります |
| 暗号化 | 40ビットキーの RC4 (Word 97-2003); 現代のセキュリティ基準では不十分 |
| 変更履歴の追跡 | WordDocument ストリーム内にバイナリのリビジョンマークとしてエンコードされた変更追跡データ |
| 埋め込みオブジェクト | スプレッドシート、グラフ、その他の Office コンポーネント用の OLE2 埋め込みおよびリンク |
| テンプレートのバリエーション | .dot ファイルは同じバイナリ形式を共有し、内部フラグでテンプレートとしてマークされます |
| Word バージョン範囲 | Word 97 (1997) から Word 2003 まで。現在の Word や LibreOffice でも読み取り可能 |
| クロスアプリケーションサポート | LibreOffice Writer、Google ドキュメント、Apple Pages で開けますが、レンダリングに若干の差異が生じます |
| マクロのセキュリティリスク | VBA マクロは任意のコードを実行できる可能性があります。現代の Word はトラストセンターを介してデフォルトで無効にしています |
| リリース日 | 1983 (Word 1.0); the modern OLE-based .doc layout dates from Word 97 (1997) |
| 仕様書 | learn.microsoft.com |
DOC の変換
コミュニティ Q&A
ユーザーからの質問まだ質問はありません。DOC ファイルについて最初の質問をしてみましょう。