【问题标题】:Android: Write to file in a non-Activity classAndroid:在非活动类中写入文件
【发布时间】:2012-09-12 11:38:03
【问题描述】:

如何在 Activity 之外的 Android 类中打开和写入文件?

FileWriter 是我的外部类,从MainActivity 初始化。 FileWriter 中的以下行:

FileOutputStream fos = openFileOutput("filename", Context.MODE_PRIVATE);

产生此编译错误:

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

我猜这个类需要一些应用程序上下文 - 我该如何传递它?

【问题讨论】:

标签: android file-io compiler-errors


【解决方案1】:

只需将Context 对象传递给FileWriter 类并将您的调用更改为:

FileOutputStream fos = context.openFileOutput("filename", Context.MODE_PRIVATE);

希望这会有所帮助。

【讨论】:

  • 这在调用者端看起来如何?我应该传递哪个上下文对象?
  • @AdamMatan,如果您从 MainActivity 初始化 FileWriter,那么 FileWriter fw = new FileWriter(this);将完成这项工作。
  • 可能的解决方案是声明类的名称,FileWriter fw = new FileWriter(YourClass.this)FileWriter fw = new FileWriter(getApplicationContext());
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-08-15
  • 2015-04-14
  • 2021-08-12
  • 2014-09-02
  • 2019-11-16
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多