0

私の質問は、外部スロットsdcardのファイルを使用する必要があるということです。使用を提案しないでください。Environment.getExternalStorageDirectory()これは、外部ストレージにファイルを作成したかった内部ストレージ用です。

4

2 に答える 2

0

私はそれが可能だとは思いません。自分のアプリで作業していたときに、書き込み可能な内部メモリがある場合に同じ問題が発生しました。実際の外部SDカードを入手する方法を見つけようとして数日を検索しましたが、運がありませんでした。

アンドロイドがストレージを使用する方法、内部のsdカードはSDCARDと呼ばれ、外部のsdカードはSDCARD0にリンクされているためだと思います(または同様のものが私の頭のてっぺんに思い出せません)。getExternalStorageを実行すると、SDCARDが検索され、内部ストレージに移動します。

于 2012-12-18T16:39:18.830 に答える
0

どうですか

File myFile = new File("/mnt/sdcard2/myFile");

編集: ファイルを作成する必要があることを忘れていました:

boolean fileCreated = myFile.createNewFile();
//at this point fileCreated must be true and the file must exists on your sdcard2

編集 :

File.createNewFile() javadoc から:

/**
 * ...
 * @return true if the file has been created, false if it
 *         already exists.
 * @throws IOException if it's not possible to create the file.
 */

したがって、ファイルが作成されるか、既に存在するか、IOException が発生したか、コードが createNewFile() を呼び出さなかった...

于 2012-12-18T14:59:27.473 に答える