
はじめまして、質問します。
webブラウザからローカルファイルの読み込みを行いたいのですが、
セキュリティーの問題でアクセスを拒否されました。
その回避法として、FileAPIによって
htmlのinput要素かドラッグアンドドロップを用いて
ローカルファイルを読み込めることが分かりました。
しかし、私がやりたいことは
絶対パスでローカルファイルを読み込むことです。
そのようなことは可能でしょうか?
上記の方法だとinputからフォルダをたどってファイルを選択するので
原理的には可能なような気がするのですが・・・・
言語はjavascriptです。
よろしくお願いします。
No.3ベストアンサー
- 回答日時:
>その回避法として、FileAPIによって
>htmlのinput要素かドラッグアンドドロップを用いて
>ローカルファイルを読み込めることが分かりました。
>上記の方法だとinputからフォルダをたどってファイルを選択するので
>原理的には可能なような気がするのですが・・・・
根本的な部分で勘違いをされている気がします。ドラッグ&ドロップで渡されるのはファイルのパスなどではありません。これはFileListオブジェクトという専用のオブジェクトで、その中に個々のファイルに関するFileオブジェクトが保管されています。このFileオブジェクトをFileReaderなどに渡すことでその内容を読み取ったり出来る仕組みになっています。
ただし、ここで勘違いしてはいけないのですが、このFileオブジェクトには、ファイルのパス情報は含まれていないのです。あるのはファイル名の情報だけ。そのファイルがどこにあるかといったことはJavaScript側からは隠蔽されており、スクリプトからタッチできません。
つまりJavaScriptでは、「パスによるファイルの指定」は過去も現在も首尾一貫して禁止されており、不可能なのです。
ドラッグ&ドロップは、ユーザーの能動的な動作により起こるイベントです。つまり、ユーザーが自分で「このファイルをアップロードしよう」といった具合に操作した結果の行動です。これに対し、「ファイルのパスによるファイルアクセス」は、ユーザー不在であり、プログラムが自分で勝手にファイルにアクセスできることを意味します。両者は全く違います。
とても詳しくわかりやすい説明をありがとうございます!
勘違いしている部分も理解できて、とても助かりました。
協力ありがとうございました。
No.2
- 回答日時:
Cドライブをドラッグアンドドロップすればいい
それかローカルで動かすなら可能
もしくはスマホなら実質SDカードの絶対パスを指定できたはず
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) VBAでの共有パスにつきまして 1 2023/03/04 17:24
- MySQL MySQL,JavaScript,PHPコードの結果を表示する方法を教えてください。 1 2023/02/13 17:49
- C言語・C++・C# pythonで外部のファイルを読み込む際のエラー 2 2022/04/12 19:22
- C言語・C++・C# pythonのファイルの並びでの読み込みとリストについて 4 2022/04/13 03:52
- フリーソフト mmfファイルからmp3に変換できる方法を教えてください(XMediaRecode以外で) 2 2022/03/22 22:25
- 電子書籍 電子書籍の開き方教えて 2 2022/04/30 07:04
- CGI htmlからパラメータで、cgiに渡したい。 1 2023/02/06 16:15
- その他(プログラミング・Web制作) pythonでクラスで複数のメソッドを利用する方法 2 2022/04/15 04:17
- その他(ソフトウェア) ロイロノート(アプリ版)のログインができません。 2 2022/09/04 21:07
- PHP htmlspecialcharsが機能していないです。 バグですか? 1 2022/04/05 01:22
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ファイルを複数選択した時のフ...
-
Filesearchオブジェクトを使用...
-
エクセルVBA あるフォルダ...
-
【VBAマクロ初心者】Excel VBA...
-
ffftpでファイル取得が0バイト...
-
vbs ブック共有を解除
-
フォルダ内のファイル存在監視...
-
ファイル番号の取得について
-
タイムスタンプの更新の方法2
-
MSHFlexGridコントロールについて
-
Excel VBA Outlookメールにエ...
-
動かなくなってしまった古いVBA...
-
VBAでのファイル名と更新日(作...
-
多量のテキストファイルの修正...
-
ASPでMDBファイルを自動作成で...
-
EXCEL VBAを使ったファイル解析...
-
Accessのウインドウサイズの固定
-
エクセルとPDFの連携
-
EXCEL VBA tif画像のプロパティ...
-
Excel for mac 2011でDir関数?
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
動かなくなってしまった古いVBA...
-
「エクセルファイルが開いてい...
-
FileDialog オブジェクトでファ...
-
vbaサブフォルダーをワイルドカ...
-
VBAでフォルダ内のhtmlファイル...
-
エクセルのVBAで開いている...
-
VB6でUTF-8ファイルの読取りを
-
excel マクロ PDF化の際のエラ...
-
Accessのウインドウサイズの固定
-
タイムスタンプの更新の方法2
-
vbs ブック共有を解除
-
ffftpでファイル取得が0バイト...
-
EXCEL VBAを使ったファイル解析...
-
サブフォルダ含むフォルダ内の...
-
ExcelVBA 文字コード変換
-
VBAでのファイル名と更新日(作...
-
AccessからOLEオブジェクト型の...
-
「AccessViolationException」...
-
フォルダ階層・ファイル名・ペ...
-
Filesearchオブジェクトを使用...
おすすめ情報