1

重複の可能性:
java.lang.IllegalArgumentException: パス区切り文字が含まれています

SD カードからファイル パス url="sdcard/Folder/test.doc" をアップロードしようとしています。次のコードを使用してサーバーにアップロードしています。

String url = path.getText().toString();
FileInputStream fis = openFileInput(url);

それは私にエラーを与えています:

FATAL EXCEPTION: main 10-19 01:19:39.480: E/AndroidRuntime(7459): java.lang.IllegalArgumentException: File /sdcard/download/ABC.pdf contains a path separator.

誰かがそれを成し遂げる方法を教えてもらえますか?

4

1 に答える 1

0

openFileInput(url);SDカードに保存されているファイルを開くことができません。このメソッドは、このコンテキストのアプリケーションパッケージに関連付けられているプラ​​イベートファイルを開いて読み取るために使用されます。

new File(path)ファイルを作成または開くには、メソッドを使用する必要があります。次に、適切なInputStreamを使用します。以下の構文を参照できます。

File dir = Environment.getExternalStorageDirectory();
File yourFile = new File(dir, "path/to/the/file/inside/the/sdcard.ext");
于 2012-10-19T07:04:55.930 に答える