1.关于文件夹的创建

//新建一个File,传入文件夹目录
File file = new File("/mnt/sdcard/work/mywork");
//判断文件夹是否存在,如果不存在就创建,否则不创建
if (!file.exists()) {//通过file的mkdirs()方法创建目录中包含却不存在的文件夹file.mkdirs();
}

2.mkdir()与mkdirs()的区别:
mkdir()是只能创建一级目录(文件夹),如果这一级目录的上面还有没有创建的目录(文件夹),那么程序会报错。
mkdirs()是可以创建多级目录(文件夹),它是把所有没有的目录(文件夹)都给创建出来。
所以开发中常用mkdirs()来创建目录(文件夹)。

3.关于手机内置SD卡下创建file文件(不创建文件夹,使用已有文件夹目录)

//新建一个File类型的成员变量,传入文件名路径。
mFile = new File("/mnt/sdcard/zhiyuan.txt");//判断文件是否存在,存在就删除if (mFile.exists()){mFile.delete();}try {//创建文件mFile.createNewFile();//给一个吐司提示,显示创建成功Toast.makeText(getApplicationContext(), "文件创建成功", Toast.LENGTH_SHORT).show();} catch (IOException e) {e.printStackTrace();}

4.关于外置SD卡下创建file文件(不创建文件夹,使用已有文件夹目录)

//先通过Environment(环境)的getExternalStorageState()方法来获取手机环境下的外置存储卡的状态,判断是否为挂载状态。
if (Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)) {//如果为挂载状态,那么就通过Environment的getExternalStorageDirectory()方法来获取外置存储卡的目录,然后加上我们自己要创建的文件名(记住文件名前要加一个"/"),这样就生成了我们要创建的文件路径。String path = Environment.getExternalStorageDirectory() + "/zhiyuan.txt";//新建一个File对象,把我们要建的文件路径传进去。File file = new File(path);//方便查看,在控制台打印一下我们的存储卡目录。Log.d("=====TAG=====", "onClick: "+Environment.getExternalStorageDirectory());//判断文件是否存在,如果存在就删除。if (file.exists()) {file.delete();}try {//通过文件的对象file的createNewFile()方法来创建文件file.createNewFile();//新建一个FileOutputStream(),把文件的路径传进去FileOutputStream fileOutputStream = new FileOutputStream(path);//给定一个字符串,将其转换成字节数组byte[] bytes = "你好啊,今天天气不错!".getBytes();//通过输出流对象写入字节数组fileOutputStream.write(bytes);//关流fileOutputStream.close();} catch (IOException e) {e.printStackTrace();}}

5.隐私文件的创建(手机没有ROOT是看不到的)

try {//通过类名.this的openFileOutput()方法得到输出流对象,传入两个参数,一个是String类型的文件名,另一个是模式,用MODE_PRIVATE,意为私有模式(会覆盖原文件)。FileOutputStream fileOutputStream = Main2Activity.this.openFileOutput("android.txt", MODE_PRIVATE);//给定一个字符串,将其转换成字节数组byte[] bytes = "今天天气不错,我们去爬山吧!".getBytes();//通过输出流对象写入字节数组fileOutputStream.write(bytes);//给一个吐司提示,显示创建成功Toast.makeText(getApplicationContext(), "创建成功!", Toast.LENGTH_SHORT).show();//关流fileOutputStream.close();
} catch (Exception e) {e.printStackTrace();
}

注:以上内容都需要在清单文件中加上下面的权限:

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

Android中文件与文件夹的创建(file)相关推荐

  1. Android 系统(181 )----Android中各类.mk文件的编写

    Android中各类.mk文件的编写 LOCAL_PATH:= $(call my-dir) include $(CLEAR_VARS) LOCAL_STATIC_JAVA_LIBRARIES := ...

  2. android的xml解析方式,Android中对xml文件解析的3种方式总结

    前言 xml 是数据传输的一种格式,Android 中的布局文件.设置文件等都采用它来表示.Android 中对 xml 文件的解析也有多种方式,下面介绍常用的 3 种方式: Dom . SAX 和 ...

  3. android 构造xml,android 中生成xml文件

    在Android中生成xml文件真的很简单,下面提供2中方法,一种是通过String写入到文件,另外一种是通过XML 的 XmlSerializer. 以后遇到Android写xml内容就不会困惑了 ...

  4. 修改Android中strings.xml文件, 动态改变数据

    有些朋友可能会动态的修改Android中strings.xml文件中的值,在这里给大家推荐一种简单的方法. strings.xml中节点是支持占位符的,如下所示: <string name=&q ...

  5. android 读json文件,在Android中读取json文件

    小编典典 将该文件放入资产中 . 对于在Android Studio项目中创建的项目,您需要在主文件夹下创建资产文件夹. 将该文件读取为: public String loadJSONFromAsse ...

  6. Android中关于APK文件的下载、安装和卸载

    如果我们想开发一款App,而这款App的需求中有对Apk文件的下载.安装和卸载功能的话(就像豌豆荚,当然功能不会那强大,因为强大的功能背后总是一些比较NB的技术在支持),那么这篇博客还是比较适合你的. ...

  7. Android中attrs.xml文件的使用详解

    $*********************************************************************************************$ 博主推荐 ...

  8. android怎么查看方法被谁调用,Android中查看布局文件中的控件(view,id)在哪里被调用(使用)...

    在阅读别人的代码时通常是很痛苦的,有时很想要看一看布局中的控件在哪里被调用了,为之很苦恼 在这里提供一种方法. 复制要查看的控件ID,到R文件中搜索到该ID, 接下来就好办的了,选中ID按下Ctrl鼠 ...

  9. Java 实现上传文件到共享文件夹,创建文件夹到共享文件夹

    Java 实现在共享文件夹下创建文件夹和文件 1.需要使用的依赖: <dependency><groupId>org.codelibs</groupId><a ...

  10. Android media 测试,如何在ANDROID中检测媒体文件是否受DRM保护?

    我尝试使用Android VideoView(媒体播放器)播放MPEG4文件 . 但它给出了以下错误 . 这是日志 . VERBOSE/MediaPlayerService(64): setDataS ...

最新文章

  1. python自动化ppt_python自动化怎么操作ppt?
  2. 沙溪理工学校计算机,学雷锋树新风——沙溪理工学校计算机部开展学雷锋活动...
  3. 头文件的用法及注意事项
  4. python展示_python展示ppt
  5. ShardingSphere 语句解析生成初探
  6. 动态规划思想-----求数组中出现最多数
  7. Windows 7如何无线上网和宽带上网
  8. ffmpeg 分辨率 压缩_ffmpeg 视频压缩
  9. APEX 压枪练习记录
  10. 百度地图自定义信息窗口
  11. 配置ST-GCN体会
  12. SpringBoot2 学习5集成Thymeleaf
  13. oracle之Number类型小数转字符串丢精度
  14. 嵌入式使用Zbar解析二维码
  15. 云服务器deeplearning_云服务器深度学习服务器环境搭建
  16. 【 58沈剑 架构师之路】究竟啥才是互联网架构“高并发”
  17. python3_函数_形参调用方式 / 不定长参数 / 函数返回值 / 变量作用域 / 匿名函数 / 递归调用 / 函数式编程 / 高阶函数 / gobal和nonlocal关键字 / 内置函数
  18. 如何运用计算机进行课堂教学,运用多媒体进行课堂教学的心得体会(精选6篇)...
  19. VC实现的简易防火墙
  20. uniqid()说明

热门文章

  1. (一)Linux ALSA 音频系统:物理链路篇
  2. java 动物声音 模拟器
  3. Linux 下 MQ 的安装
  4. 绘制离散系统的直接模拟框图
  5. 追寻凌云梦——对话阿里云总裁王坚
  6. 8P8C 双绞线应用: Ethernet 586A/B, RS232 - EIA 561
  7. 互联网校招技术面试解析
  8. 优锘科技:扒一扒图化资源申请之三生三世那点事儿
  9. ubuntu20.04下好用的截图软件
  10. 导入项目出现: Unable to resolve target ‘android-10′ 解决办法