質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Windows 10

Windows 10は、マイクロソフト社がリリースしたOSです。Modern UIを標準画面にした8.1から、10では再びデスクトップ主体に戻され、UIも変更されています。PCやスマホ、タブレットなど様々なデバイスに幅広く対応していることが特徴です。

Q&A

解決済

4回答

5925閲覧

file://スキームについて

madagasukal

総合スコア24

Windows 10

Windows 10は、マイクロソフト社がリリースしたOSです。Modern UIを標準画面にした8.1から、10では再びデスクトップ主体に戻され、UIも変更されています。PCやスマホ、タブレットなど様々なデバイスに幅広く対応していることが特徴です。

0グッド

3クリップ

投稿2021/07/02 06:00

file://
→上記のfileスキームについて「ファイルを開く」ために必要なプロトコルという理解です。
ただこれを使うメリットがよく分からず質問させて頂きました

例えば使い方としては下記を想定しています。
ブラウザのパスなどに打ち込むとローカルの自分の「hoge.txt」がみれるという使い方
file:///C:/hoge.txt

上記を使うと確かに見ることが出来ますが下記で指定する時と何が違うのでしょう?
C:/hoge.txt

「file:///」と指定することで何かメリットや意味があるのかが知りたいです。
例えばhttpであればサーバと通信するためのお約束です。「file:///」これは何のために指定しているのでしょう?

想像するに自分のローカル環境でファイルを開くためでしょうか...?普段意識してないけど暗黙的に使われているとか?
それを明示的に記載しただけで特にメリットはないという感じでしょうか?

もし知っている方がいれば教えてください。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答4

0

下記で指定する時と何が違うのでしょう?

C:/hoge.txt

たぶんWebブラウザはChromeをお使いかと思いますが、

URLの全体は「file:///C:/hoge.txt」であるところ、Chromeが気を利かせてURLの一部分である「C:/hoge.txt」という表記でも開いてくれるのです。更にいえばURLではないファイルパス「C:\hoge.txt」でも開けます。
また、URL欄には「C:/hoge.txt」と表示されていますが、これをコピーすると「file:///C:/hoge.txt」となっているのが分かります。

同様に、例えば「example.com」と入力すると気を利かせて「http://example.com」が開かれます。
URL欄にはプロトコル(スキーム)部が省略された「example.com」で表示されますが、コピーすれば「http://example.com」になっています。

この辺のURL以外のものを入力した時の扱いはブラウザで多少差があり、Firefoxでは「C:/hoge.txt」は受け付けず「file:///C:/hoge.txt」か「C:\hoge.txt」でないと駄目、URL欄の表示は入力によらず常に「file:///C:/hoge.txt」となります。

なお、ローカルのHTMLファイルからローカルやネットワーク上のファイルシステム上のファイルへリンクを貼る時も、現在と同じプロトコルは省略できますので、/////192.168.0.1/share/temp.jpgとか/c:/temp.jpgとか書けます。

例えばローカルのデスクトップでファイルをダブルクリックし開く時などにはこのプロトコルは必要ないし関係ないと理解したのですが合ってますでしょうか?

プロトコル名を含んだURLでファイルの在り処を表すのはWebブラウザなどの流儀であって、ローカルのプログラムがファイルを扱う時はファイルシステム上のパスで在り処を表します。その意味では「関係ない」という認識で合っていると思います。

投稿2021/07/03 06:12

ikadzuchi

総合スコア3047

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

madagasukal

2021/07/03 16:51

ご回答ありがとうございます。 解決済みにしてしまいましたが個人的にはこの回答がベストアンサーです。。。知りたいことを全て丁寧に記載頂きました????‍♂️ >その意味では「関係ない」という認識で合っていると思います。 →この部分も正直モヤモヤしておりましたが解決しました!丁寧に頂いて助かりました???? 困らないように頑張りますが、また困ったら教えてください!感謝してもしきれませんが、すごく分かりやすい説明でした。改めてありがとうございました!
guest

0

ベストアンサー

ローカルのhtmlをブラウザで開いたときに、同じPC(もしくはLAN)内に
リンクを貼る場合プロトコルはfileです

投稿2021/07/02 06:18

yambejp

総合スコア116732

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

madagasukal

2021/07/02 06:42

なるほど。 何かネットワークを介してファイルを開きたい時に使うプロトコルという理解であってますでしょうか? だからこそ、例えばローカルのデスクトップでファイルをダブルクリックし開く時などにはこのプロトコルは必要ないし関係ないと理解したのですが合ってますでしょうか?
guest

0

解決済みですが、一つの答えとして
RFC3986 たとえば Uniform Resource Identifier (URI): 一般的構文
を参照したらいかがでしょうか。
RFCはご存知でしょうが、議論のベースになります。
知識が深まると思います。

投稿2021/07/02 11:52

ikapy

総合スコア1167

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

madagasukal

2021/07/03 16:43

ご回答頂きありがとうございます????‍♂️ 簡単な記事だけでなく、RFCなども参照するようにしないとダメですね…読んでみてためになりました。
guest

0

http: とかftp: とか、なんのために指定しているのかはおわかりでしょうか。

投稿2021/07/02 06:04

y_waiwai

総合スコア88042

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

madagasukal

2021/07/02 06:08

回答ありがとうございます。 下記の理解です。 ・httpはサーバとの通信のお約束 ・ftpはファイルを転送したりするときに使うお約束 fileの場合は 記載してもしなくてもローカルでファイルが開くことができるので、なぜ指定する必要があるのかなと思った次第です。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問