gpt4 book ai didi

android - MODE_PRIVATE 无法解析为 openFileOutput 中的变量

转载 作者:行者123 更新时间:2023-11-29 17:51:24 25 4
gpt4 key购买 nike

我正在尝试保存 html 文件。我有扩展 AsyncTask 的类

public class DownloadBook extends AsyncTask<String, Void, String> {

在这个类中,我有这个方法:

private void writeFile(String result, String title) throws FileNotFoundException {
FileOutputStream fos = openFileOutput(title+".html", MODE_PRIVATE);
PrintWriter pw = new PrintWriter(new BufferedWriter(
new OutputStreamWriter(fos)));
pw.print(result);
pw.close();
}

MODE_PRIVATE 给出以下错误:

MODE_PRIVATE cannot be resolved to a variable

然后我将其更改为Context.MODE_PRIVATE。现在 openFileOutput 给出了这个错误:

The method openFileOutput(String, int) is undefined for the type DownloadBook

如何解决这个问题?

最佳答案

使用 Activity 或 Application 上下文从 DownloadBook 类中调用 openFileOutput 方法:

FileOutputStream fos = 
getApplicationContext().openFileOutput( title+".html", Context.MODE_PRIVATE);

如果 DownloadBook 是单独的 java 类,则使用类构造函数获取 Activity 上下文以调用 openFileOutput 方法,如下所示:

public class DownloadBook extends AsyncTask<String, Void, String> {
private Context context;

public DownloadBook(Context context){
this.context=context;
}

}

现在使用 context 调用 openFileOutput 方法:

FileOutputStream fos = 
context.openFileOutput( title+".html", Context.MODE_PRIVATE);

从 Activity 传递上下文到 DownloadBook 类构造函数:

DownloadBook obj_Downloadbook=new DownloadBook(getApplicationContext());

关于android - MODE_PRIVATE 无法解析为 openFileOutput 中的变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22595424/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com