Android说无法解析方法'getExternalFilesDir(null)'

Oli*_*ins 8 java android file android-studio

我正在使用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();
    }
}
Run Code Online (Sandbox Code Playgroud)

我无法找到任何方法来摆脱这个错误.提前感谢您解决问题的方法.

Dam*_*lak 21

getExternalFilesDir()是需要的方法Context.在Activity类中,您只需要调用getExternalFilesDir(),但在其他类中,您需要调用它Context.

喜欢:

  • getActivity().getExternalFilesDir(null) 在片段中

  • context.getExternalFilesDir(null)在类中,您Context作为参数传递

  • YourActivity.this.getExternalFilesDir(null); 在Activity的内部类中调用时