つまり、サーバー側にロードされたファイルのフルネームを取得することはできません。ファイル名とそのコンテンツをbyte
(他の属性の中でも)生の配列に含めるだけです。これはJavaの問題でも、他のサーバー側のテクノロジの問題でもありません。ブラウザの実装に関連しています(ただし、IE6にはこれに関する欠陥が含まれている可能性があります)。
あなたの質問とは直接関係ありませんが、私の注意を引きました
PS:さらに、ajax呼び出しを行い、FileReaderを使用してそのファイルを読み取る必要があるバックエンドへのファイルパスを指定します
通常、セキュリティホールにつながる可能性があるため、ajaxを使用してファイルのアップロードを処理することはできません。それでも、 XMLHttpRequestを使用してファイルを送信できるブラウザ(ChromeやFirefoxなど)がいくつかありますが、一部のブラウザ(IE8-など)では許可されていないため、ファイルをajaxアップロードするにはiframeを使用する必要があります仕事。
これらすべての問題の処理を回避するために、ajaxファイルのアップロードを処理するサードパーティのjsライブラリを使用することをお勧めします。例としては、 Javaサーバー側の例もあるblueimp jQueryファイルのアップロードがあります(免責事項:私はこのプロジェクトで作業しておらず、blueimpとは一切関係がありません)。このプラグインを使用するには、HTML / JavaScript / jQuery / Javaサーバー側に関する中程度の知識が必要であるため、初心者の場合は、動作させるのに時間がかかる場合がありますが、一度動作するとかなり良いです。