Android 新建文件夹和文件

要在安卓手机SD卡(或外部存储)上新建文件夹或文件有如下几个步骤:

1. 添加权限(在AndroidManifest.xml文件里添加)

 
<!-- 允许在外部存储器即SD卡上添加或删除系统文件-->
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
<!-- 允许在外部存储器即SD卡上写数据-->
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<!-- 允许在外部存储器即SD卡上读数据-->
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />

2. 新建文件夹

/**
* 创建文件夹
*/
public void createFolder() {
   //获取SD卡的路径
   //String path = MyApplication.getContext().getExternalFilesDir(Environment.DIRECTORY_DOCUMENTS).getPath();

   //getFilesDir()获取你app的内部存储空间
   File Folder = new File(MyApplication.getContext().getFilesDir(), "newFolder");
   
    if (!Folder.exists())//判断文件夹是否存在,不存在则创建文件夹,已经存在则跳过
    {
         Folder.mkdir();//创建文件夹
         //两种方式判断文件夹是否创建成功
         //Folder.isDirectory()返回True表示文件路径是对的,即文件创建成功,false则相反
         boolean isFilemaked1 = Folder.isDirectory();
         //Folder.mkdirs()返回true即文件创建成功,false则相反
         boolean isFilemaked2 = Folder.mkdirs();

         if (isFilemaked1 || isFilemaked2) {
             Log.i(Tag,"创建文件夹成功");
         } else {
             Log.i(Tag,"创建文件夹失败");
         }

     }else {
            Log.i(Tag,"文件夹已存在");
     }

    }
 

3. 创建文件

/**
 * 创建文件
 * @param fileName
*/
public void creatFile(String fileName) {
    //新建一个File类型的成员变量,传入文件名路径。
    File mFile = new File(Const.path + "/" + fileName + ".xml");
    //判断文件是否存在,存在就删除
     if (mFile.exists()){
         mFile.delete();
     }
     try {
        //创建文件
         mFile.createNewFile();
           
     } catch (IOException e) {
         e.printStackTrace();
         Log.e("creatXMLFileException",e.getMessage());
     }
}
 
 

 

另外:昨天因为某些问题,把原来SDK给删了,换了新的SDK。原来的模拟器自然是没有了,于是我新建了模拟器重新运行我的软件,出现了Exception, 后来发现程序不能在模拟器上创建文件夹但是可以在手机上创建文件夹。现在发现了问题所在了,原来我建模拟器的时候没有添加SD卡存储,模拟器没有SD卡,自然是会创建文件夹失败。

  • 0
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值