Android文件系统可以从非活动类写入java吗?
我正在编写一个应用程序,需要每隔一段时间从安卓文件系统中进行写入和读取。该应用程序由一个ActionBarActivity组成,它承载三个不同的片段。我的计划是创建一个模型类来管理我所有的数据,并在它认为合适的时候读/写安卓文件系统。到目前为止,我还不知道如何让一个不是活动的类访问这些功能
如果可能的话,我的最终目标是允许I/O在模型类中独立工作,以尽可能少地保持耦合
下面是我试图在模型中运行的当前代码
private String readFromFile() {
String ret = "";
Scanner s;
ArrayList<Player> loadedRosterList = new ArrayList<Player>();
try {
InputStream inputStream = openFileInput("applicationRoster.txt");
if ( inputStream != null ) {
InputStreamReader inputStreamReader = new InputStreamReader(inputStream);
BufferedReader bufferedReader = new BufferedReader(inputStreamReader);
String receiveString = "";
while ( (receiveString = bufferedReader.readLine()) != null ) {
s = new Scanner(receiveString);
s.useDelimiter(",");
Player newP = new Player(s.next(), s.next(), s.next());
loadedRosterList.add(newP);
}
inputStream.close();
currentRoster.replacePlayers(loadedRosterList);
}
}
catch (FileNotFoundException e) {
Log.e("login activity", "File not found: " + e.toString());
} catch (IOException e) {
Log.e("login activity", "Can not read file: " + e.toString());
}
return ret;
}
# 1 楼答案
您可以将
Context
传递给您的方法:注意不要将上下文泄漏到该方法之外,以避免内存泄漏