我正在使用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);

  • 08-04 05:27