0

コンピューター上の場所を参照しようとしていますが、Java から構文が間違っていると表示されます。

この行は正しいですか?

File newUploadedFile = new File("D:\\" + ファイル名);

問題は、ファイルが目的の場所に正しくアップロードされることですが、エラーが発生します。

java.io.IOException: ファイル名、ディレクトリ名、またはボリューム ラベルの構文が正しくありません

4

3 に答える 3

6

常にバックスラッシュを Java 文字列でエスケープします。

File newlyUploadedFile = new File("D:\\" + fileName);

IOException は、システムが filename で指定したファイルを見つけられないために発生します。追加してみる

newlyUploadedFile.exists();

そしてそれが何を返すかを見てください。パスが false を返す場合は、ファイル名に誤りがあります。

于 2010-02-25T02:36:58.430 に答える
3

まず、質問に示されているコードはコンパイルされません。しかし、IOException を確認したので、明らかに別のコードを実行しています。

パス名の構文について不平を言う IOException を取得するには、実際にはパス名に何か問題がある必要があります。"D:\\" + fileName実際にあなたに与えるものは何ですか?への呼び出しを追加して、System.err.println(...)それが何であるかを確認します。

于 2010-02-25T03:35:45.597 に答える
1

ノート:

  1. その例外テキストは、JavaではなくWindowsオペレーティングシステムからのものです。

  2. Javaファイル名で円記号を使用する必要はありません。少なくとも、13年に一度も出会ったことがないのなら。

于 2010-02-25T04:53:35.507 に答える