2

ファイル名とパスを指定してjavascriptを使用してクライアント側でファイルを読み取る方法があるかどうか疑問に思っています。私は以下を読む方法を知っています:input type="file"

つまり、ファイルブラウザを開いてファイルを選択せず​​に、fopenのようにファイル名で読み取るだけです。
他の方法ではない場合、ファイル名とパスからjavascriptでFileオブジェクトをインスタンス化する方法は?

答えを見て、自分の目的についてもう少し説明しようと思いました。私は実際にはウェブページを作成していません。私は、どのシステムでも利用できるソフトウェアとしてブラウザを使用しています。HTMLページはすべてローカルになります。私はこのようにして、jsのパワーを活用できるようにしています。この状況を考えると、ファイルを読み取らせる許可フラグを設定する方法はありますか?ありがとうございました。

4

2 に答える 2

4

JSを使用してファイルを読み取る他のオプションとなるDrag'nDropAPIがあります


コードがクライアントのファイルシステムから直接読み取られないように、常にハードルがあります。これは、プライバシーとセキュリティの目的で設計されています。

  • 拡張機能/プラグイン-サンドボックスが敵になり、ファイルシステムへのアクセスが制限されます

  • Javaアプレット-ファイルシステムを読み取るには、署名された証明書が必要です。自己署名証明書は、セキュリティプロンプトとして機能する「このアプレットを信頼しますか」というプロンプトを生成します。

  • 入力type=file-ユーザーにファイルを選択するかどうかのオプションを提供します

  • ドラッグアンドドロップ-ユーザーにファイルをドラッグするかどうかのオプションを提供します

  • XHR-同一生成元ポリシーは、特にサーバー上ではなくローカルでページを実行している場合に、ブロックします。

  • JSONP-ただし、これはSOPをバイパスするため、ファイルはJSONP形式である必要があります。

于 2013-02-09T15:44:56.700 に答える
0

私は自分の問題の解決策を見つけました、ここにあります...ユーザーまたはページがファイルを要求するときはいつでも、ポップアップする追加のウィンドウを通過する必要があるというjavascriptの制限があるのは事実ですが、すべてのファイルが既知のフォルダー内にあることを要求する場合は、代わりにzipフォルダーを指定するようにユーザーに依頼できます。zip.jsなどのツールを使用して、zipフォルダーで必要なファイルを開くことができます。ありがとうございました :)

于 2013-02-26T05:01:13.757 に答える