Программа выдает исключение при попытке создать файл в Android - PullRequest
0 голосов
/ 31 января 2011

Я пытаюсь открыть файл и создать его, если он не существует.Мой код выдает исключение, которое говорит, что файл не существует, но я подумал, что с опцией rw он создаст его

// save dATA   
try {
    RandomAccessFile f=new RandomAccessFile("ted.dat", "rw");
    f.write(cGlobals.mBoard[0], 0, cGlobals.fBoardSize* cGlobals.fBoardAmount);
    f.close();

} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();

Ответы [ 2 ]

0 голосов
/ 31 января 2011

Извините, но я думаю, что это не должно работать.Хотя в javadoc для Android это не упоминается, вот что я видел в javadoc для J2SE:

 * @exception FileNotFoundException
 *            if the mode is <tt>"r"</tt> but the given string does not
 *            denote an existing regular file, or if the mode begins with
 *            <tt>"rw"</tt> but the given string does not denote an
 *            existing, writable regular file and a new regular file of
 *            that name cannot be created, or if some other error occurs
 *            while opening or creating the file

Это означает, что если ваш режим включает «r» (т. Е. Это «r» или «wr»), файл долженесть.

0 голосов
/ 31 января 2011

Да, то, что вы пытаетесь сделать, должно работать. Но ты где именно пишешь? Попробуйте записать на SD-карту, изменив свой путь на "/sdcard/<yourCustomFolder>/ted.dat".

Кроме того, я думаю, что у вас AndroidManifest.xml должно быть следующее:

<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...