我正在使用Android Studio尝试将文件写入外部存储。
其他帖子建议我使用getExternalFilesDir(null)
进行此操作,但会收到消息Cannot resolve method 'getExternalFilesDir(null)'
。
public void makeFile() {
try {
String storageState = Environment.getExternalStorageState();
if (storageState.equals(Environment.MEDIA_MOUNTED)) {
File file = new File(getExternalFilesDir(null), "outputFile.txt");
FileOutputStream fos = new FileOutputStream(file);
String text = "Hello, world!";
fos.write(text.getBytes());
fos.close();
}
} catch (Exception e) {
e.printStackTrace();
}
}
我还没有找到任何摆脱这种错误的方法。预先感谢您对问题的任何解决方案。
最佳答案
getExternalFilesDir()
是需要Context
的方法。在Activity类中,您只需要调用getExternalFilesDir()
,但是在其他类中,您需要使用Context
来调用它。
喜欢:
片段中的
getActivity().getExternalFilesDir(null)
类中的context.getExternalFilesDir(null)
,您将Context
作为参数在Activity 的内部类中调用时
YourActivity.this.getExternalFilesDir(null);