拡張子について
「拡張子」は、ファイルの名前のうち、「.(ピリオド)」で区切られた後の、アルファベット数文字で表記される記号のことです。よく使われるところでは「.exe 」「.jpg」などがありますが、珍しいものでは「123」「001」といった、数字だけの拡張子も存在します。
文字数
拡張子の文字数は、3文字または4文字が一般的ですが、5文字、2文字のものも存在します。
現在は特に制限があるわけではありませんが、昔のWindowsでは拡張子に3文字までという制限がついていたことから、「jpeg」と「jpg」、「html」と「htm」といった、中身は同じですが文字数が減らされている拡張子が一部存在しています。
関連付け
拡張子は、Windowsでどのようなファイルなのか、どのアプリケーションで開くことができるのかを記録する「関連付け」を行っておけば、次からダブルクリックするだけで指定したアプリケーションでファイルが読み込まれるように設定されます。
関連付けはパソコンを使用するうえでは超基本的な動作ですので、パソコンユーザーであれば必ず、関連付け設定を利用しているはずです。
とはいえ、一般的な画像の拡張子や、ソフトをインストールした時などは自動でパソコンに拡張子が関連付けられますので、自分で意識して設定したことがないから知らなかった、ということはあるかもしれませんね。
それではファイルの拡張子について、一覧とその意味を確認していきましょう。
【種類別】ファイルの拡張子の一覧表
拡張子は数がかなり多いので、種類別にしてご紹介していきます。
HTML/XML
こちらで紹介する拡張子は「マークアップ言語」と呼ばれるファイルの種類です。マークアップ言語とは、タグを利用して、文章を構造化することに特化した言語のことです。
簡単に言うと、人間であれば感覚的に理解できる「タイトル」「本文」「見出し」などといった、文章を構成する要素をコンピュータに区別させ、処理してもらうための言語、といえます。
コンピュータは、文章を読んで、ここが見出しだな、ここが重要なポイントだな、といった、人間であれば直観的に行える判別を行うことができません。そのために、マークアップ言語による「タグ付け」を使って管理、処理を行う必要があります。
タグ付けは、部屋を片付けて、引き出しに入っているものの名前を書くようなものです。マークアップ言語自体、それ以外の機能は全くないただの文章データで、それを処理するのは、Webブラウザの役目です。Webブラウザがきちんと文章の構成を判別できるようにするために、人間が機械に分かるような書き方をする、それがマークアップ言語なのです。
マークアップ言語は多数存在しています。すべてを紹介することは難しいので、代表的な言語であるhtmlとxmlの2つを押さえておきましょう。
1.HTML(HTM)
htmlは、普段誰もが利用するウェブページで使われている言語です。ウェブサイトのいわば土台の部分を作るための技術なのです。htmlだけでは、ウェブページの装飾などを行うには不足しているので、cssという別の言語を使って、より良いものへと作り上げていきます。
HTMLは正式には「HyperText Markup Language」といいます。それぞれの言語にルールが設定されており、そのルールにのっとったタグを扱って、ウェブページを構成して行くことができるのです。
HTMLをベースに、簡単にタグとはどういうものなのか、確認していきましょう。
タグはカッコ(<>)で囲んで記述します。また、タグの対象範囲は「/(スラッシュ)」を使って設定できます。タグは例えば、
「<b>(文字を太字にする)」 例:この問題はとても<b>難しい</b>問題です。
「<u>(文字の下に線を引く)」例:模試の日程は<u>2019年2月16日(土)</u>です。
といった、文字を変化させる役割を果たすタグがあったり、
「a href=""(他ページへのリンク)」例:<a href="https://aprico-media.com/">
「img src="" alt=""(画像を表示する)」例:<img src="icon.jpg" alt="猫のアイコン">
といった、画像やリンクを作るためのタグがあったりと様々です。
2.SHTML
shtmlは、htmlに、SSI(Server Side Include)というプログラムのついたものを指す拡張子です。
本来、htmlはただの文章でしかなく、データを取得するなどの処理を行うといったプログラム言語としての機能は持ちません。しかし、SSI付きのhtmlであるshtmlは何らかの処理を行うことができるのです。
そもそも、Internet ExplorerやChromeといったWebブラウザがページを表示するためには、必ずサーバー上からウェブページのデータをダウンロードする必要があります。
そのあと、データに書いてあるマークアップ言語に基づいて文章や画像などを整理、表示して、初めて我々が目にするウェブページが出来上がるのです。
shtmlファイルは、ファイルがダウンロードされる前にサーバー側でプログラムが実行されます。
例えば、「flastmod file」という指示で、参照したいファイルの最終更新日を取得することができます。
例<!--#flastmod file="cat.html"-->(cat.htmlの最終更新日を表示)
最近では、shtmlはあまり使われていない拡張子です。
3.XML
xml(eXtensible Markup Language)は、htmlと同様広く使われているマークアップ言語です。
htmlが基本、ほぼほぼウェブサイト専用の言語でありほかの用途ではほとんど使われていないのに対して、xmlはウェブサイト以外の使い道も存在します。
xmlの特徴は、「自由度が高いがルールが厳密」という点です。
タグの名前を自由に設定することができることから、人間の視覚的にもかなり分かりやすい言語の書き方ができます。ひらがなやカタカナ、漢字を使った「<名前>」「<値段>」「<住所>」といったタグを使えば、そのタグにどのような情報が書かれているかは明白です。
xmlは、人間に見やすい用途、例えばデータのやり取りや、ファイルの設定などを共有するために用いられることが多いです。
またWEBサービスのデータ連携え利用するAPIのアウトプットのフォーマットとしてもよく利用されています。
テキストファイル
テキストファイルは、読んで字のごとし、文字の情報が入ったデータです。
例えばhtmlが文字の並び、強調表示などの情報も含めているテキストファイルであるのに対して、txtは本当に文字の情報のみを持っているファイルです。
ちなみに、「文字の情報」と書きましたが、テキストファイルは厳密には「文字」を保存していません。パソコンは本来、数値しか理解することができないものだからです。
テキストファイルに保存されている「文字の情報」である数値を文字に変えて表示してくれているのが「文字コード」と呼ばれるものです。
ですので、異なる文字コードを使ってテキストファイルを読み込んだ場合、全く違う文字として表示されてしまうことがありますが、保存されている情報自体に問題はありません。
テキストファイルは基本、あらゆる環境において開くことが可能なファイルです。より便利にテキストを編集したり、ウェブサイト用に編集したりするために、テキストエディタというアプリケーションが存在しています。
テキストエディタは、Windowsであれば「メモ帳」がありますし、Macのパソコンでも、専用のアプリケーションが多数あり、もちろん開くことができます。
やり取りをする相手の環境によっては、文字コードの問題が発生する場合があります。
環境の違う相手とテキストのやり取りをすることがあれば、文字コードというものについて、頭に入れておいて損はないでしょう。
1.TXT
Windowsのデフォルト設定で「メモ帳」に関連付けされている拡張子です。
txtファイルは、パソコンゲームの説明書としてフォルダに入っていることもありますね。
2.CSV
CSV(Comma Separated Values)ファイルは、「,(コンマ)」で区切られたテキストファイルのことです。
コンマで区切られている点以外は、まったくtxtファイルと変わりません。メモ帳などのテキストエディタで開くこともできます。
ただのテキストファイルとの違いは、Excelで開くことができる点にあります。カンマで区切られていることによって、それぞれのデータが別々のセルに当てはめられるので、簡単に表を作成することが可能です。
大量のデータを書き出す時などに、ただtxt形式で書き出すと、それを表にするためには膨大な時間の手作業を行わなくてはなりません。CSV形式で保存した場合、Excelが自動でセルに当てはめてくれるため、簡単に表を作ることができます。
圧縮ファイル
他の人とデータをやり取りをするときには、「データを圧縮して送る」というのが一般的ではないかと思います。
コンピュータ内において、圧縮とはどのような処理がなされているのでしょうか。
例えば、「XXXXYYYYYZZZ」という12文字で表記されたデータがあるとします。これを、「X4Y5Z3」という表記に置き換えると、「Xが4つ、Yが5つ、Zが3つ」という情報を、元の半分の6文字で表現することができますね。このような、重複したデータをより効率のいい形でまとめる処理を行うことを、コンピュータの世界における圧縮と表現します。
ファイルを圧縮することによるメリットは、
- データを1つの圧縮ファイルにまとめる(アーカイブ)ことで、データの整理ができる
- データの容量を削減することで、より多くのデータを保存しておくことができる
- 小さい容量になるため、ダウンロードの負荷を軽減したり、メールで送信する際の容量制限にも有効
また、ファイルの圧縮によって、どれくらいの容量が節約できるのでしょうか。
圧縮形式にもよるのですが、物による、と言わざるを得ないほど、圧縮できる容量には違いが生じてしまいます。テキストや画像などはサイズが半分ほどになることもありますが、音楽ファイルなどはよくても2~3割といった割合になることが多いです。
いいこと尽くしのファイル圧縮ですが、ファイルの圧縮には一定のデメリットも存在します。
圧縮形式によっては、一定の容量を超えたファイルを圧縮した際に、解凍することができなくなってしまう不具合も報告されています。また、圧縮の際やデータのやり取りの際に破損してしまうこともあります。
一部圧縮形式では、破損してしまったファイルをリカバリする機能がついていたりもしますが、必ず復旧できるとは限りません。大きな容量のファイル・フォルダを圧縮するときには、よく気を付けて行うようにしましょう。
1.ZIP
最もスタンダードな圧縮形式であり、ほぼすべてのパソコンユーザーが使用するであろう拡張子です。
1989年に開発されて以来、世界標準の圧縮形式として膨大なデータにを圧縮してきた優れものです。
Windows・Mac両方のパソコンにおいて、現在圧縮・解凍機能が標準搭載されており、パソコンを持つ人であればだれでも簡単に扱うことができるようになっています。
しかし、古くから使われている圧縮形式だからでしょうか、Windows標準搭載の機能では、次の条件を満たしたファイルは解凍できないという不具合が報告されています。
- 圧縮前に4GBを超えているファイル
- 圧縮後に2GBを超えてしまうファイル
これらのファイルは高確率で破損してしまいます。さらに質の悪いことに、エラーメッセージなども表示されず、普通に圧縮はされるのに開けない、という状態になってしまうのです。
この現象は、zip64という規格に対応した圧縮ソフトであれば発生しないので、容量の大きいデータを圧縮する際には、そもそもWindows標準搭載の機能を使わず別の圧縮ソフトウェアや別の圧縮形式を使う、などの手段をとり、問題を回避できるようにするとよいでしょう。
2.RAR
rarはzipとは違い、そこまで広く使われている拡張子ではありません。Windowsでも標準搭載の機能で解凍することができないので、他の人にデータを送る際などには、先方がrar形式の解凍ができる環境かの確認が必要になってくると思われます。
ただ、rar形式の圧縮はメリットが大きいといえます。まず、ZIPよりも圧縮率が高く、より小さなファイルに圧縮することができます。また、大容量のファイルは分割して、複数の圧縮ファイルにすることができます。リカバリレコードという特殊なデータを追加することで、破損した場合の修復も行うことが可能です。
ある程度の容量でファイルを分割できることから、大容量ファイルを一生懸命作ったのに破損している…という不具合も起きませんし、容量制限のあるファイル送信の際にも効果的といえます。万が一ファイルが破損してしまったときにも、復旧の可能性があるのはありがたいですね。
3.7Z
こちらも、rarと同様多少マイナーな拡張子といえますが、圧縮形式としては大変強力なものです。メールのやり取りで使うことは少ないかもしれません。
7Zという拡張子は、7-ZIPというフリーソフトウェアの開発元によって生まれ、オープンソースとして多くの圧縮・解凍ソフトで扱うことができるようになっています。
容量制限も、ほぼないといって差し支えありません。16000000000GBという、途方もないデータ量まで対応しているからです。
rarと同様、分割圧縮をすることも可能です。修復機能は付いていませんが、十分便利な圧縮方式といえるでしょう。
音楽
音楽ファイルの拡張子には、大きく分けて可逆圧縮と非可逆圧縮、そして非圧縮の3種類の形式が存在します。
可逆圧縮(ロスレス圧縮)は、圧縮前のデータを損失なく全て保った状態で圧縮する形式のことです。圧縮できる容量はかなり少ないですが、元のデータに戻せる、可逆性を持ちます。このような性質から、なるべく良い音質を保ちたい時などに用いられます。
非可逆圧縮は、圧縮する際に一部のデータを切り捨てる形で圧縮する形式です。かなりの容量を圧縮することが可能な反面、損失してしまったデータは元に戻すことができません。切り捨てるのは、人間の可聴域である20Hz~20000Hzの外のデータや、聞き取りにくいとされる部分が中心です。
圧縮して切り捨てる音域の割合のことをビットレート(kbps)といい、ビットレートは自由に設定することができます。ビットレートが小さいと、とても小さな容量に圧縮することができますが、その分音質は目に見えて落ちます。ビットレートが大きいと、さほど小さな容量にはなりませんが、元のデータにかなり近い状態で圧縮することができます。
音に損失がある非可逆圧縮ですが、ある程度のビットレートを維持していれば、殆ど違いが分からない程度には良い音を保つことができます。所持しているCDを携帯音楽プレイヤーにインポートする際などは、高品質の非可逆圧縮で十分といえるでしょう。一般に、128~196kbps以上のビットレートでは、ほとんど違いが判らなくなる、といわれます。視聴する環境や個人差もありますが…。
1.WAV(非圧縮)
wav形式は、Windowsで標準的に利用されている、非圧縮のファイルの拡張子です。
当然、どの圧縮ファイルよりも容量は大きいですが、どの形式よりも良い音質を上限としています。
市販されているCDのデータなどは、最高品質を保つため必ず非圧縮の形式で作成されます。
2.AIFF(非圧縮)
aiff(Audio Interchange File Format)は、アップルの開発したMacパソコン標準の拡張子です。
しかし、wavがMac環境でもおおむね対応されているのに対して、aiffはWindows環境で対応されていることは少ないのが現状です。
3.MP3(非可逆圧縮)
mp3(MPEG-1 Audio Layer 3)はいわずと知れた、世の中に広く伝わる音楽ファイル形式です。
「MPEG-1」という、後述しますがコーデックと呼ばれる動画圧縮規格の音声に使用されているものです。
mp3は圧縮の際、人間が聞き取りにくい音域データを切り捨ててしまうことで高い圧縮効率を持ちます。
とはいえ、高ビットレートのものであれば容量は大きくなりはしますが、ほぼCDと遜色ない仕上がりになります。逆にビットレートを下げた設定であれば、とても小さく圧縮することはできますが、目に見えて音質は劣化します。
あまり最高品質を求めるあまり容量不足になってしまうよりは、自分の耳で聞き分けられる範囲の品質で圧縮したほうが効率的といえるかもしれませんね。
4.AAC(非可逆圧縮)
aac(Advanced Audio Coding)は、動画圧縮規格「MPEG-2」「MPEG-4」の音声に使用されています。mp3に替わる音声フォーマットとして開発されたもので、iTunesでは標準の圧縮形式として用いられています。
5.FLAC(可逆圧縮)
flac(Free Lossless Audio Codec)は、オープンソースとして広く使われている可逆圧縮の音声ファイルです。先述した通り、圧縮した状態から寸分違わない元のファイルへ復元することが可能です。
より高品質を求めるユーザの間では、FLAC形式で音楽を圧縮することが支持されています。
圧縮できる割合は、音楽データの質に拠りますが、平均すると4割~5割くらい圧縮することが可能のようです。
ちなみにFLACとほぼ同質の規格で、アップル社の開発したALAC(Apple Lossless Audio Codec)という規格もあります。
画像
画像ファイルの拡張子を大きく分類する要素は、「ラスタ」「ベクタ」という2種類があります。
ラスタ(またの名をビットマップ)形式は、点(画素)の集合体で画像を描く形式のことを指します。一般的に用いられている画像のほとんどは、このビットマップ形式で描かれています。
ラスタ形式の画像の画質は、一定の長さにどれだけの画素があるかという点の密度であらわされます。これを、解像度といいます。ラスタ形式は、背景画像のような細かい要素のたくさんある画像を描くのに向いています。
ベクタ(Vector)形式は、画像をベクター計算という処理で描く形式のことです。点と線を数値で表し、その数値をプログラムが描いてくれる、そのような手順で画像が作られます。
この形式の最大の特徴は、拡大すると劣化するラスタ画像に対して、画質が劣化しない点にあります。ベクター処理は、線の長さを数値として持っているため、その数値を全て等しく大きくすれば、いくらでも図を拡大することができます。拡大するごとに描きなおすので、画像が劣化しないのです。javascriptなどのプログラミング言語と併用すると、拡張的な機能が使えたり、アニメーションさせることなども可能です。
そんな素晴らしいベクタ形式ですが、背景画像のような、要素の非常に多い複雑な画像を描くことには向いていません。ベクタ形式の用途としては、例えばロゴなどは大きくしたり小さくしたりして用いますし、比較的単純な作りをしていることが多いことから向いているといえます。
また、画像ファイルの拡張子は音楽ファイルの拡張子と同様、圧縮の種類として非圧縮・可逆圧縮・非可逆圧縮の3つの要素で分類することもできます。
1.BMP(ラスタ・非圧縮)
bmp(Microsoft Windows Bitmap Image)形式は、もっとも古くから存在している画像形式です。音楽ファイルで言えば、wav形式と同じような位置づけです。
非圧縮の形式なので、画質に劣化は生じませんが、容量も当然大きくなります。なるべく良い画質で保存しておきたいもの、例えば写真などを保存するときには向いている形式でしょう。
非圧縮の形式をやり取りする必要があるとき以外は、メールの添付などで扱うことはあまりありません。
2.PNG(ラスタ・可逆圧縮)
png(Portable Network Graphics)形式は、GIF形式の画像の代替形式として開発された画像ファイルです。
可逆圧縮であることからデータの損失を元通りに戻すことも可能で、最大約280兆色ものカラー描画に対応しています。また、背景色を設定することで、設定した色を透明化する透過処理を行うこともできます。イラストやロゴなどに向いたファイル形式です。
3.GIF(ラスタ・非可逆圧縮)
gif(Graphic Interchange Format)形式は、ファイル容量が小さく、Webページなどで表示しやすいこと、またアニメーションさせることが可能なことから広く使われてきた画像ファイルです。
非可逆圧縮であり、容量も小さいのでその分画質の劣化は激しいです。
一時期使用に特許料が必要だったことがあり、代替品としてpngが開発されたという背景があります。
4.JPEG/JPG(ラスタ・非可逆圧縮)
jpg(Joint Photographic Experts Group)形式は、bmp、gifの次に作られた画像形式です。
bmpとgifの間をとるような性質を持ち、適度な圧縮と、適度な画質を保つことができることから、現在ではpngと並んで写真のファイル形式として最も広く扱われています。
ただ、上書き保存をするたびに画質が劣化するという特徴を持っています。保存の際に、人間の目に違和感のない範囲でデータを切り捨てる処理を行うことから、これを繰り返してしまうと画像はどんどん劣化してしまう…このような仕組みになっているからです。
音楽ファイルでいえば、mp3ファイルに比較的似た位置づけといえます。
5.SVG(ベクタ・非圧縮)
svg(Scalable Vector Graphics)形式は、ベクタ形式の画像ファイルですが、その実態はマークアップ言語で記述されるテキストデータで、ラスタ画像とは異なっています。
svg形式のファイルそのものは非圧縮で、テキストエディターで編集したり、javascriptと一緒に使うことでアニメーションを作ることも可能です。
更に、svgは圧縮することが可能です。圧縮後はsvgzという拡張子に替わり、テキストエディターでの編集はできなくなります。
映像
映像ファイルを考えるうえで重要になってくるのは、「コーデック」の存在です。
映像には、「音声」と「映像」の2つの要素があります。その音声と映像をそれぞれ圧縮する「エンコード」、圧縮された音声と映像を元に戻して再生する「デコード」の2つを行うプログラムが、コーデックなのです。圧縮された映像ファイルは、デコードしなければ再生することができません。
映像ファイルの拡張子は「コンテナ」と呼称されています。映像ファイルはまず、音声と映像の2つの要素が入っているコンテナの形で識別され、次に、コンテナの中身である音声と映像それぞれを圧縮したコーデックによって分類されます。
同じ拡張子の映像ファイルであっても、中身の音声・映像の圧縮方法(コーデック)が異なると、デコードして再生することができないことがあるのです。
動画ファイルが再生できない、といった不具合が起きた際には、該当の動画ファイルに対応したコーデックを導入することで再生ができるようになるかもしれません。
コーデックについて詳しく説明しようとすると膨大な情報量となってしまうため、全てを説明することは難しいのですが、コーデックが働くことで動画は再生されているのか、ということを頭の片隅に置いておけば十分かと思われます。
1.AVI
avi(Audio Video Interleave)形式は、Windows標準の映像ファイルです。
とても汎用性の高い動画形式で、多くのコーデックが存在していますが、その分対応コーデックがなく再生できない、といった問題も発生してしまうことがあります。
圧縮度は高くないので、容量がかなり大きくなるのが特徴です。
2.MOV
mov形式は、アップル社が開発したファイルで、Mac標準の動画ファイルです。
こちらもavi同様汎用性が高く、aviと同じコーデックの問題が発生しやすいです。
Windowsでも「Quicktime Player」というアプリケーションがインストールされていれば、再生することができます。
3.MP4
mp4形式は、高い圧縮率に比較的高画質を保つことができることから、現在最も広く使われている動画形式です。
Windowsでも標準機能でほぼすべてのコーデックを網羅しているため、mp4形式のファイルであればまず再生することが可能です。
mp4形式は、mov形式を基に開発されたとされています。
4.WMV
wmv(Windows Media Video)形式は、マイクロソフト社が開発している動画ファイルです。Windows Media Playerで再生することが可能です。
また、DRMと呼ばれるデジタル著作権管理機能を搭載することが可能なことから、動画配信サービス・ストリーミング配信などで広く使われています。MPEG-4をベースにしているため、aviよりも高い圧縮率を誇ります。
Windows/Macでファイルの拡張子を表示する方法
一般的に使われている拡張子についてご紹介してきました。
しかし、WindowsやMacユーザーの方で、拡張子なんか知らないし見たことない、という方もいらっしゃるかもしれません。
なぜなら、Windows10は初期設定で拡張子を表示しないように設定されてしまっているからです。
Windows/Macでファイルの拡張子を表示させる方法については、以下の記事を参照ください。