このコードに出くわしたとき、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();
}
}
}