重新启动应用程序时出现FileNotFoundException

时间:2014-06-13 12:21:30

标签: android fileinputstream fileoutputstream

我不知道为什么但是我的Init()函数得到了一个FileNotFoundException。

发生的事情是,当我第一次启动应用程序时,获取一个应用程序是正常的(文件不存在)。然后我按下一个调用Save的按钮,然后创建文件(如果我在outputStream.close()之后添加一个Log,我就能看到它)。我实际上试图用FileInputStream打开创建的文件,但我没有得到异常。

但是。当我关闭应用程序并再次打开它时。我得到FileNotFoundException。知道为什么吗?

public class MyClass {
    public static Context mContext ;    
    public static void Save(){
        String test = "test" ;
        FileOutputStream outputStream;
        try {
            outputStream = mContext.openFileOutput(FILENAME, Context.MODE_PRIVATE);
            outputStream.write(test.getBytes());
            outputStream.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    public static void Init(Context c){
        mContext = c ;
        FileInputStream inputStream;
        try {
            inputStream = c.openFileInput(FILENAME);
            String test = "";
            char ch ;
            while((ch=(char) inputStream.read())!=-1)
                test+= ch ;
            inputStream.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

编辑:

因此,这些调用不是在一个活动中,而是在一个静态类中。 Init来自我主要活动的onCreateSave来自另一项活动的onPause。希望有所帮助。

0 个答案:

没有答案