フォルダー内のファイルを読み取ろうとしていますが、プログラムを実行するとこの例外がスローされます。他のフォルダも試しました。同じ例外をスローします。
Exception in thread "main" Java.io.FileNotFoundException: C:\backup (Access is denied)
at Java.io.FileInputStream.open(Native Method)
at Java.io.FileInputStream.<init>(Unknown Source)
ディレクトリを開いて読み取ることはできません。isFile()
メソッドとisDirectory()
メソッドを使用して、ファイルとフォルダーを区別してください。 list()
メソッドとlistFiles()
メソッドを使用してフォルダーの内容を取得できます(それぞれファイル名とFile
sの場合)、リストされたファイルのサブセットを選択するフィルターを指定することもできます。
また、ターゲットフォルダーのアクセス許可を確認することが重要な場合もあります。ユーザーに書き込み許可を与えることが解決策かもしれません。それは私のために働いた。
ここに私が発見したばかりの落とし穴があります-他の誰かを助けるかもしれません。 Windowsを使用している場合、クラスフォルダーで暗号化を有効にしてはいけません! Tomcatはそれを好まないようです。クラスフォルダーを右クリックし、[プロパティ]を選択して、[詳細...]ボタンをクリックします。 [コンテンツを暗号化してデータを保護する]チェックボックスがオフになっていることを確認します。 Tomcatを再起動します。
それは私のために働いたので、ここでそれが他の誰かにも役立つことを願っています。