2015-04-02 93 views
0

此代码中的问题在哪里?
我想写信给内部存储,但运行时,该代码的应用程序停止不幸保存文件时出错

public Boolean save_user_pass(String user , String pass) throws IOException 
{ 
    try { 
     OutputStreamWriter write1=new OutputStreamWriter(openFileOutput(getFilesDir()+"data" , Context.MODE_PRIVATE)); 
     write1.write(user); 
     write1.write("\n"); 
     write1.write(pass); 
     write1.flush(); 
     write1.close(); 

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

回答

1

有一对夫妇的问题。 首先,openFileOutput()并不需要一个目录,但只有一个文件名,所以你需要做的:

OutputStreamWriter write1=new OutputStreamWriter(openFileOutput("data" , Context.MODE_PRIVATE)); 

,文件将在内部存储应用程序的文件的文件夹结束。 现在代码的作品,但它的价值也指出在你的代码做getFilesDir()+"data",这本来也是错误的监守getFilesDir()返回路径没有斜线,这样你应该做getFilesDir()+"/data"

+0

非常感谢你 – user2983227 2015-04-02 14:45:39