2

を使用してファイルを作成しました:

FileOutputStream fos = app.openFileOutput("FileOne.txt", Context.MODE_APPEND);

後で同じプログラムで、次を使用してこのファイルを開こうとします。

PrintWriter writer = new PrintWriter(context.getFileStreamPath("FileOne.txt"));

しかし、それを行うと、LogCat で次の例外が発生します。

06-05 09:49:32.230: D/error155 java.lang.RuntimeException: File not found(7707): [ 06-05 09:49:32.240  7707: 7736 D/ java.io.FileNotFoundException: /FileOne.txt: open failed: EROFS (Read-only file)

内部ストレージを確認しましたが、ファイルは存在します。ファイルを正しく開くには?

4

4 に答える 4

3

ファイル file = new File(あなたのパス);

//まず、以下のステートメントを使用して指定されたパスにファイルが存在することを確認します。

ファイルが存在しています();

ファイルのアクセス許可が許可されているかどうかを確認します。

file.canExecute(); – return true, file is executable; false is not.
file.canWrite(); – return true, file is writable; false is not.
file.canRead(); – return true, file is readable; false is not.

ファイルのパーミッションを設定します:

file.setExecutable(boolean); – true, allow execute operations; false to disallow it.
file.setReadable(boolean); – true, allow read operations; false to disallow it.
file.setWritable(boolean); – true, allow write operations; false to disallow it.
于 2013-06-05T13:12:11.300 に答える
1

ファイルは見つかりましたが、読み取り専用です

open failed: EROFS (Read-only file)

FileNotFoundException という名前は誤解を招きやすい

于 2013-06-05T10:09:40.513 に答える
-1

このファイルは次の場所に作成されます: あなたのルート。これは読めないと思います。

パスを指定して、指定したディレクトリに任意のファイルを作成します。

編集:

FileOutputStream fos = app.openFileOutput(Environment.getExternalStorageDirectory() + File.separator +"FileOne.txt", Context.MODE_APPEND);
于 2013-06-05T10:20:26.887 に答える