1. import java.io.File;
  2. import java.io.IOException;
  3. import android.app.Activity;
  4. import android.os.Bundle;
  5. import android.view.Menu;
  6. import android.view.MenuItem;
  7. import android.widget.Toast;
  8. public class MainActivity extends Activity {
  9. @Override
  10. protected void onCreate(Bundle savedInstanceState) {
  11. super.onCreate(savedInstanceState);
  12. setContentView(R.layout.activity_main);
  13. File file=new File("/mnt/sdcard/test");//创建文件
  14. if(!file.exists()){
  15. try {
  16. file.createNewFile();
  17. } catch (IOException e) {
  18. // TODO Auto-generated catch block
  19. e.printStackTrace();
  20. }
  21. }else {
  22. Toast.makeText(MainActivity.this,"创建成功!",Toast.LENGTH_SHORT).show();
  23. }
  24. file.delete();//删除文件
  25. }
  26. }

不要忘记在Manifest中添加权限:

  1. </pre><pre class="html" name="code"><uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>

注:

    1. File file=this.getFilesDir();//这个目录是当前应用程序默认的数据存储目录(/data/data/com.example.filedemo1/files)
    2. Log.i("Info",file.toString());
    3. File file=this.getCacheDir();
    4. //这个目录是当前应用程序默认的缓存文件的存放位置(/data/data/com.example.filedemo1/cache)
    5. //把一些不是很重要的文件在此创建 使用
    6. //如果手机内存不足的时候系统会自动去删除APP的cache目录的数据
    7. Log.i("Info",file.toString());
    8. // /data/data/<包名>app_imooc(/data/data/com.example.filedemo1/app_imooc)
    9. File file=this.getDir("imooc",MODE_PRIVATE);
    10. /*MODE_PRIVATE
    11. * 为默认操作模式,代表文件是私有数据,只能被应用本身访问,在该模式下,写入的内容会覆盖源文件的内容。
    12. * MODE_APPEND
    13. * 模式会检查文件是否存在,存在就往文件追加内容,否则就创建新文件
    14. * MODE_WORLD_READABLE
    15. * 表示当前文件可以被其他应用读取
    16. * MODE_WORLD_WRITEABLE
    17. * 表示当前文件可以被其他文件写入
    18. * */
    19. Log.i("Info",file.toString());
    20. File file=this.getExternalCacheDir();
    21. //可以得到外部的存储位置(/mnt/sdcard/Android/data/com.example.filedemo1/cache)
    22. //该位置的数据和内置的使用是一样的
    23. //如果APP被卸载了,这里的数据会自动被清除掉。
    24. //如果开发者不遵守这样的规则,不把数据放入/mnt/sdcard/Android/data/com.example.filedemo1/cache
    25. //卸载之后数据将不会清除掉,就会造成所谓的数据垃圾
    26. Log.i("Info",file.toString());

在Android中创建文件的更多相关文章

  1. Android 5.1.1在外置SD卡中创建文件夹

    Android 4.4之后WRITE_MEDIA_STORAGE 权限仅提供给系统应用,不再授予第三方App,WRITE_EXTERNAL_STORAGE 权限,仅仅用于授权用户写 primary e ...

  2. android中解析文件的三种方式

    android中解析文件的三种方式     好久没有动手写点东西了,最近在研究android的相关技术,现在就android中解析文件的三种方式做以下总结.其主要有:SAX(Simple API fo ...

  3. Android DevArt5:如何在Android中创建多线程?

    本篇内容: 如何在Android中创建多进程?查看进程的三种方式有哪些? 多进程模式的运行机制?- 演示了多进程出现问题中的两种情况: 静态成员失效 Application多次创建 IPC基础概念介绍 ...

  4. Android中创建PopupMenu弹出式菜单

    之前写过一篇创建option menu的文章:Android中创建option menu 本文主要是讲如何创建PopupMenu弹出式菜单 1.首先创建menu文件menu2.xml: <?xm ...

  5. Android中的文件读写总结

    在Android中,文件主要分为两大类,内部存储和外部存储 内部存储的文件是程序私有的,分为普通文件和Cache文件 外部文件也可以是私有的,也可以是共有的,这要根据文件的目录位置来决定 共有文件可以 ...

  6. android下创建文件夹和修改其权限的方法

    原文:http://www.cnblogs.com/wanqieddy/archive/2011/12/28/2304906.html 由于工作的需要,今天研究了在android下创建文件夹和修改其权 ...

  7. Android中获取文件路径的方法总结及对照

    最近在写文件存贮,Android中获取文件路径的方法比较多,所以自己也很混乱.找了好几篇博客,发现了以下的路径归纳,记录一下,以备不时之需 Environment.getDataDirectory() ...

  8. 利用(CMD)在Django中创建文件

    django项目的创建(在CMD中) 1.切换到你想要存储项目的位置,我这里保存在桌面上 cd Desktop 2.创建一个django项目,项目名叫guest django-admin startp ...

  9. android中的文件(图片)上传

    android中的文件(图片)上传其实没什么复杂的,主要是对 multipart/form-data 协议要有所了解. 关于 multipart/form-data 协议,在 RFC文档中有详细的描述 ...

随机推荐

  1. Canvas——基本入门

    基本概念 1.canvas 是 HTML5 提供的一个用于展示绘图效果的标签. canvas 原意画布, 帆布. 在 HTML 页面中用于展示绘图效果. 最早 canvas 是苹果提出的一个方案, 今 ...

  2. 预处理、const、static、sizeof

    1.预处理和宏定义 #define xxxx #ifdef xxxx ; #elseif xxxx; #endif 2.c++求随机数 rand(),rand()会返回一随机数值, 范围在0至RAND ...

  3. mvc 上传大文件

    <configuration> <system.web> <httpRuntime maxRequestLength="204800" useFull ...

  4. TP调用JS

    echo "<script>alert('删除成功');window.location.href='?c=Banner&a=index' </script>& ...

  5. 运维是做什么的?史上最全互联网Linux工作规划!十分钟找到linux运维工程师职业方向!

    首先祝贺你选择学习Linux,你可能即将踏上Linux的工作之旅,出发之前,让我带你来看一看关于Linux和Linux运维的一切. Linux因其高效率.易于裁剪.应用广等优势,成为了当今中高端服务器 ...

  6. vue踩坑之路--点击按钮改变div样式

    有时候,我们在做项目的时候,想通过某个按钮来改变某个div样式,那么可以通过以下代码实现: <!DOCTYPE html> <html> <head> <me ...

  7. 前端领域的BEM到底是什么

    前端领域的BEM到底是什么 BEM - Block Element Modfier(块元素编辑器) BEM方法确保每一个参加了同一网站开发项目的人,基于一套代码规范去开发,这样非常有利于团队成员理解彼 ...

  8. strcpy & memcpy区别

    这两个经常使用的函数,主要区别有: strcpy 返回值是char *, strcpy(x1, x2); x1 x2必须都是char* 类型 memcpy(x1, x2, sizeof(xx)); m ...

  9. 【Codeforces 467C】George and Job

    [链接] 我是链接,点我呀:) [题意] 让你从1..n这n个数字中 选出来k个不相交的长度为m的区间 然后这个k个区间的和最大 求出这k个区间的和的最大值 [题解] 设dp[i][j]表示前i个数字 ...

  10. [Cogs728] [网络流24题#3] 最小路径覆盖 [网络流,最大流,二分图匹配]

    建图:源点—>边的起点(集合1中的)—>边的终点(集合2中的)—>汇点,所有边权均为1, 计算最大流,最后枚举起点的出边,边权为0的即为匹配上的, 可以这样理解:每条边表示起点和终点 ...