そんな言葉を聞いて、少し戸惑った経験はありませんか?
この記事では、プログラミング初心者の方でも理解できるように、ファイルパスの基本的な考え方を、できるだけわかりやすく解説します。
パスとは
パスとは、ファイルやフォルダの場所を示す文字列のことで、正式名称は「ファイルパス」と言います。コンピュータ内のファイルの住所のイメージです。
例えば、WindowsのPCでは下記のイメージのものです。
パスの種類
パスは、主に絶対パスと相対パスの2種類があります。
下記の階層構造を例に、それぞれご説明いたします。
C:\
├─ Users
│ ├─ hogehoge
│ │ ├─ Desktop
│ │ │ └─ fugafuga.txt
│ │ ├─ Documents
│ │ │ └─ work
…
絶対パス
絶対パスは、ルートディレクトリ(Windowsの場合はドライブ「C:¥、D:¥など」、LinuxやmacOSの場合は「/」)から、目的のファイルやフォルダまでの全ての階層構造を表現します。
具体例
前述したデスクトップパスの例が、この絶対パスの形式です。
これは「Cドライブの Users → hogehoge → Desktop にある fugafuga.txt」という意味です。
メリット
- ルートディレクトリから始まるため、途中のフォルダ階層が明瞭。
- どのカレントディレクトリ(現在開いているファイル・フォルダ)からでも、アクセスが可能。
デメリット
- ルートディレクトリから始まるため、パスが冗長的になりやすい。
- ストレージ移行などでルートディレクトリが変わった場合、参照不可となってしまう。
相対パス
相対パスは、カレントディレクトリと、目的のファイルやフォルダとの位置関係のみを表現します。
具体例
相対パスは、カレントディレクトリによって変わります。
相対パスのサンプル①(同じ Desktop フォルダにいる場合)
現在地
相対パス
相対パスのサンプル②(1つ上の階層に戻る場合)
現在地
相対パス
..(ドット2つ)は、「1つ上のフォルダ」を意味します。
相対パスのサンプル③(Users フォルダにいる場合)
現在地
相対パス
相対パスのサンプル④(さらに深い場所にいる場合)
現在地
相対パス
-
1つ目の
..で、work → Documents に移動 -
2つ目の
..で、Documents → hogehoge に移動 -
そこから Desktop へ
メリット
- 絶対パスより、短いパスで済むことが多い。
- ストレージ移行などでルートディレクトリが変わった場合でも、ファイルやフォルダの位置関係が以前と同じであれば参照可能。
デメリット
- カレントディレクトリが変わると、位置関係が変わるのでパスも変わる必要がある。
- カレントディレクトリと、目的のファイルやフォルダが遠い場合、冗長的になり且つ視認性が低くなる。
ルート相対パス
相対パスは、ウェブシステムやウェブサイトで、よく活用されます。
具体的には、ドメイン内部ページへのリンクや、スタイルシート(CSSファイル)や画像ファイルを読み込む際などです。
(もちろん、ドメイン外部ページへのリンクや、外部のリソースを読み込む際には、絶対パスしか使用できません)
また、サイトやサーバーのルートディレクトリを基準にしたルート相対パスも、よく活用されます。
ルート相対パスは、サイトやサーバーのルートディレクトリを表す「/」から書き始めます。絶対パスのドメイン部分(example.com)を省略するイメージです。
メリットは、相対パスのように記載しますが、絶対パスと同様にルートディレクトリを基準にするので、短く記載して正確にファイルにアクセスすることができます。
様々なページから呼び出されるナビゲーションメニューや、途中でフォルダ構造が変わる際に活用されます。
パスの用途
絶対パスを使う場合
確実にファイルを参照する必要がある際に使います。例えばシステムの設定や環境変数の設定をする際です。
相対パスを使う場合
参照先がカレントディレクトリから近い場合やフォルダ構造を変えずに移動する際に使います。
初心者がつまずきやすいポイント
パスの区切り文字
ファイル名やフォルダ名の間は区切り文字で区切られます。
Windowsの場合
バックスラッシュ「\」


LinuxやMacOSの場合
スラッシュ「/」

Windowsのバックスラッシュは、環境によって、スラッシュを反転したものか、Yに二重線を重ねた円マークのいずれかで表現されますが、フォントに依存するもので文字コード(区切り文字としては)は同じです。
正しい記号以外は区切り文字として認識されないので、自分が使っているOSの確認や言語の確認をしっかり行ってから、区切り文字を入力するようにしましょう。
ファイル構造の把握
相対パスを使う際に起こりやすいのですが、ファイル構造を把握できておらず正しい場所を参照することができないことがあります。
カレントディレクトリと参照元のファイルの絶対パスを見比べることや、エクスプローラーやFinderなどのファイルマネージャーでファイルの構造視覚的に捉えるようにしましょう。
拡張子の付け忘れ
「.txt、.png、.pdf」などの拡張子を忘れてファイル名のみを入力する場合があります。拡張子まで入力しないとファイル名と認識されないのでしっかり入力するようにしましょう。
おわりに

絶対パス・相対パスについて解説いたしました。
無料のプログラミングスクール「テクドリ」の卒業生のインタビュー動画を、インスタグラムほか公式SNSにて公開中!