少しでも分かりやすく伝えたい絶対パス・相対パス
皆さんこんにちは!!
今回はプログラムやファイル管理等で用いる絶対パスと相対パスについて説明していきたいと思います!
はじめに
今回は以下の様なファイル構成の場合でホームページのファイルである「index.html」から画像ファイル「image.png」を参照使用とする場合を説明していきます。
基本的に別のファイルを参照すると言ってもファイルは同じ階層でしか探すことはできません。
そのため、絶対パスや相対パスを用いてファイルの場所を示すことで今回のような場合でもホームページのファイルから階層の違う画像ファイルを探し出すことができるようになります。
絶対パスとは
まずは、絶対パスについて説明していきます。
絶対パスは、最上位の階層からファイルの場所までを示すパスになります。
今回の場合、「image.png」を参照したいときは、「c:/page/image/image.png」となります。
「/」は区切りを示す様な意味合いがあり、「~の」みたいに使うことができ、日本語っぽく書こうとするならば、「Cドライブのpageフォルダのimageフォルダのimage.png」みたいな意味になります。
ちなみに、図で表すと以下の様になります。
絶対パスは上のフォルダから順に見ていくんだな程度の理解で問題ないと思います。
絶対パスのメリット
絶対パスのメリットは指定されたファイルの位置が変わらない限りパスが変わらないことにあります。
例として、「index.html」の位置が変わってしまっても画像は参照可能です。
相対パスとは
次に相対パスについて説明していきます。
相対パスは現在いる階層からファイルの場所までを示すパスになります。
今回の場合、「index.html」から「image.png」を参照したいときは、「../image/image.png」となります。
「/」は先ほどの「絶対パスとは」似て説明したので省きますが、「../」はまた別の意味なので改めて説明します。
「../」は一つ上の階層を示す意味で、「index.html」から一つ上の「page」というフォルダまで移動した意味になります。
図で表すと以下のようになります。
ここまで移動すれば後は絶対パスと同じように順次参照していくことで、ファイルを参照することができます。
最終的な参照の流れは以下のようになります。
相対パスは今いる場所から移動しながらファイルを探すんだな程度の理解で問題ないと思います。
絶対パスのメリット
相対パスのメリットはフォルダ全体の位置が移動しても、相対的な位置が変わらない限り、パスが変わらないことです。
例として、「page」フォルダの位置が別のフォルダやドライブに移動してしまっても、「index.html」ファイルと、「image.html」ファイルの位置関係が変わらない限り、画像は参照可能です。
まとめ
絶対パスは最上位の階層からファイルの場所までを示すパス、相対パスは現在いる階層からファイルの場所までを示すパスです!
プログラミングでも意外と使ったりするので、覚えておいて損はないと思います!