当我尝试在Android中创建文件时,程序会抛出异常

时间:2011-01-31 18:57:51

标签: java android file

我正在尝试打开一个文件,如果它不存在则创建它。我的代码抛出一个异常,说文件不存在,但我想用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 :(得分:0)

是的,你要做的事情应该有效。但你正在写作的地方吗?尝试写入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" />

答案 1 :(得分:0)

我很抱歉,但我认为这不应该奏效。虽然Android的javadoc没有提到这就是我在J2SE的javadoc中看到的:

 * @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”),该文件应该存在。