【发布时间】:2013-04-16 11:09:13
【问题描述】:
当我遇到以下代码时,我正在关注来自 Google 的关于保存文件的 Android 教程:
String filename = "myfile";
String string = "Hello world!";
FileOutputStream outputStream;
try {
outputStream = openFileOutput(filename, Context.MODE_PRIVATE);
outputStream.write(string.getBytes());
outputStream.close();
} catch (Exception e) {
e.printStackTrace();
}
“openFileOutput”给出一个错误说是“未定义”所以我创建了一个
Context fileContext;
在相同的方法上,但它给出了一个错误,说我应该初始化它。我应该如何初始化它?或者我应该在类中声明它,因为如果我将它从方法中取出并在类中声明它不会给我一个错误。
我的代码:
public class DataManager
{
private static DataManager _instance;
private Context fileContext;
public String[] arraySentences;
private DataManager()
{}
public static DataManager getInstance()
{
if (_instance == null)
{
_instance = new DataManager();
}
return _instance;
}
public void saveSentences(String jsonData)
{
String filename = "myfile";
FileOutputStream outputStream;
try
{
outputStream = fileContext.openFileOutput(filename, Context.MODE_PRIVATE);
outputStream.write(jsonData.getBytes());
outputStream.close();
}
catch (Exception e)
{
e.printStackTrace();
}
}
}
【问题讨论】:
-
你把这段代码放在哪里,发布你的完整代码
-
你的类应该扩展 Activity。或者它需要从活动中获取上下文
-
我正在构建一个单例,而不是一个活动。我不应该扩展到活动。