无法在SD卡中创建DIR

时间:2012-01-31 09:46:14

标签: android

我已经制作了代码来制作按钮点击事件的目录。但是我无法创建目录。以前,我可以轻松地做到,但现在它有一些麻烦,我没有成功。请帮忙。

代码:

button1.setOnClickListener(new View.OnClickListener() {
            public void onClick(View v) {
                Username = username.getText().toString();
                Password = password.getText().toString();
                if (Username.length() == 0) {

                    Toast.makeText(getBaseContext(), "Please Fill Username ",
                            Toast.LENGTH_LONG).show();
                } else if (Password.length() == 0) {
                    Toast.makeText(getBaseContext(), "Please Fill Password ",
                            Toast.LENGTH_LONG).show();

                } else {
                    SaxParser(Username, Password);
                    //new AddTask().execute();

                    if (str_getValue.equalsIgnoreCase("0")) {
                        Toast.makeText(getBaseContext(),
                                "Incorrect Username or Password",
                                Toast.LENGTH_LONG).show();
                    } else {
                        File folder = new File(Environment
                                .getExternalStorageDirectory()
                                + "/audiometer/video");

                        boolean success = false;
                        if (!folder.exists()) {
                            success = folder.mkdir();
                        }
                        if (!success) {
                            // Do something on success
                            if(login_checkBox_remember.isChecked()==true)
                            {

                                SavePreferences("MEM1",Username);
                                SavePreferences("MEM2",Password);
                                SavePreferencesBool("flag",true);
                            }   

                            i.putExtra("value", str_getValue);
                            i.putExtra("machineName", str_Machinename);

                            startActivity(i);
                        } else {

                        }

                    }
                }
            }

        });

我还在清单中允许WriteExternalStorage

2 个答案:

答案 0 :(得分:1)

您使用了“/ audiometer / video”,这意味着您要在目录中创建目录。你不能以编程方式做到这一点。如果你想要首先创建“”/ audiometer“文件夹,然后你需要在其中创建”视频“。你不能同时实现两者。改变你的代码并再试一次。

同时检查我的答案here是否有Java ME应用程序。

答案 1 :(得分:1)

你检查过该目录是否已存在?

以这种方式尝试:

boolean success = folder.exists();

if (!success)
    success = folder.mkdir();

if (success) {
    // Do something on success
}