Java 将文件写入SD卡不起作用

Java 将文件写入SD卡不起作用,java,android,file,sd-card,Java,Android,File,Sd Card,我写这个是为了在SD卡中存储一个文件,但它不起作用 public class TestarFilesActivity extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState);

我写这个是为了在SD卡中存储一个文件,但它不起作用

public class TestarFilesActivity extends Activity {

    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        File root = Environment.getExternalStorageDirectory();

        try {
            if (root.canWrite()) {
                File file = new File(root, "agora.txt");
                FileWriter fwriter = new FileWriter(file);
                BufferedWriter out = new BufferedWriter(fwriter);
                out.write("Hello world");
                out.close();
            }
        } catch (IOException e) {
            e.printStackTrace();
        }TestarFilesActivity.this.finish();
    }
}

这个问题是如何产生的?我如何解决它?我认为一切正常,我也在清单中写入了权限。

如果您在android emulator中运行此应用程序,您必须通过DevTools终端emulator准备sdcard,并使用linux命令检查sdcard目录,将其设置为$ls并允许sdcard 如果不可用,请准备并尝试以下操作

File file = new File(root, "/sdcard/agora.txt");
FileWriter fwriter = new FileWriter(file);
BufferedWriter out = new BufferedWriter(fwriter);
out.write("Hello world");
out.close();

//Use this in manifest.xml  
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
File File=new文件(root,“/sdcard/agora.txt”);
FileWriter fwriter=新的FileWriter(文件);
BufferedWriter out=新的BufferedWriter(fwriter);
写出(“你好世界”);
out.close();
//在manifest.xml中使用此选项

您是否已授予AndroidManifest.xml中SD卡的写入权限

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />


发牢骚,不工作。什么时候(@Ricardo:但是说真的,发你的错误信息:-)它没有给出任何错误。它被解决了,它不工作,因为手机连接到了个人电脑