【问题标题】:Android java : How to create folder inside android devices?Android java:如何在 android 设备中创建文件夹?
【发布时间】:2014-03-11 08:39:21
【问题描述】:

我正在开发一个应用程序,需要在单击按钮时在 SD 卡内创建一个文件夹。 我不知道该怎么做。任何人都可以帮忙吗?请。

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_date_select);
    edit_date = (EditText) findViewById(R.id.edit_date);
    edit_date.setGravity(Gravity.CENTER_HORIZONTAL);
    btn_setDate = (Button) findViewById(R.id.btn_setDate);
   btn_setDate.setOnClickListener(this);
    updateDate();

    btn_cFolder = (Button) findViewById(R.id.btn_cFolder);
     btn_cFolder.setOnClickListener(new OnClickListener() {
         public void onClick(View v) 
            {
             Environment.getExternalStorageDirectory();
             File folder = new File(Environment.getExternalStorageDirectory() + "/wahaha");
             boolean success = true;
             if (!folder.exists()) {
                 success = folder.mkdir();
             }
             if (success) {
                 Toast.makeText(getBaseContext(), "You have successfully created." , Toast.LENGTH_LONG ).show();
             } else {
                 Toast.makeText(getBaseContext(), "You have Failed to create." , Toast.LENGTH_LONG ).show();
             }
            }
   });

}

我是android开发的初学者。 好的,我现在做了很多研究,我发现该文件夹可以在 android 设备上看到。但是一旦我插入PC。仍然无法看到。有什么建议可以查看 PC 上的文件夹吗? 顺便问一下,为什么要保存到内部存储?

【问题讨论】:

标签: android


【解决方案1】:

3 步:

  1. 使用这种方式将sd卡安装在/sdcard或任何其他位置:

    Environment.getExternalStorageDirectory();
    
  2. 您必须在 AndroidManifest.xml 文件中获取使用权限条目:

    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
    
  3. 如果目录已经存在,则 mkdir 返回 false。如果不存在,请尝试创建新目录:

    File folder = new File(Environment.getExternalStorageDirectory() + "/map");
    boolean success = true;
    if (!folder.exists()) {
        success = folder.mkdir();
    }
    if (success) {
        // Do something on success
    } else {
        // Do something else on failure 
    }
    

【讨论】:

  • 当点击按钮成功但是当我检查sd卡时没有看到文件夹。
  • 您在 AndroidManiferst.xml 中授予用户权限
  • 仍然看不到文件夹。好奇怪
  • 嘿,非常感谢您给出这个答案 =) 我发现该文件夹可以在 android 设备上看到。但是一旦我插入 PC 。仍然看不到它并保存到内部存储中,我想保存到 SD 卡?
  • 哦,它保存到内部存储吗?如何?我们获取外部存储权限,因此内部存储如何保存。仔细检查
【解决方案2】:

试试这个代码

  File dir = new File( "dir_name");
  dir.mkdirs();

【讨论】:

    【解决方案3】:

    试试这个..

    File f2 = new File(Environment.getExternalStorageDirectory().toString()+"/Folder");   
    f2.mkdirs(); 
    

    你还必须在 Manifest 中添加写权限

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

    【讨论】:

      【解决方案4】:
      // create a File object for the parent directory
      File nameofDirectory = new File("/sdcard/Wallpaper/");
      // have the object build the directory structure, if needed.
      nameofDirectory.mkdirs();
      // create a File object for the output file
      File outputFile = new File(nameofDirectory, filename);
      // now attach the OutputStream to the file object, instead of a String representation
      FileOutputStream fos = new FileOutputStream(outputFile);
      

      别忘了在 android manifest 中添加权限

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2016-03-17
        • 1970-01-01
        • 2019-07-19
        • 1970-01-01
        • 2012-01-13
        • 2017-10-15
        • 2014-01-28
        相关资源
        最近更新 更多