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

原文:http://www.cnblogs.com/wanqieddy/archive/2011/12/28/2304906.html

由于工作的需要,今天研究了在android下创建文件夹和修改其权限的方法,需要了解的是每个应用程序包都会有一个私有的存储数据的目录(类似文件夹),只有属于该包的应用程序才能写入该目录空间,每个包应用程序的私有数据目录位 于Android绝对路径/data/data/<包名>/目录中。除了私有数据目录应用程序还拥有/sdcard目录(即SD Card的写入权限,但不可以修改sd card下文件的访问权限)。文件系统中其他系统目录,第三方应用程序是不可写入的。

       代码如下两种:

1、

//创建文件夹

File destDir = new File(“/data/data/[your path]/temp”);
  if (!destDir.exists()) {
   destDir.mkdirs();
  }

//修改权限

 FileOutputStream fos;   

 fos = openFileOutput("filename" , MODE_WORLD_READABLE);  


 

备注:可用的mode 参数如下:

    /**
     * File creation mode: the default mode, where the created file can only
     * be accessed by the calling application (or all applications sharing the
     * same user ID).
     * @see #MODE_WORLD_READABLE
     * @see #MODE_WORLD_WRITEABLE
     */
    public static final int MODE_PRIVATE = 0x0000;
    /**
     * File creation mode: allow all other applications to have read access
     * to the created file.
     * @see #MODE_PRIVATE
     * @see #MODE_WORLD_WRITEABLE
     */
    public static final int MODE_WORLD_READABLE = 0x0001;
    /**
     * File creation mode: allow all other applications to have write access
     * to the created file.
     * @see #MODE_PRIVATE
     * @see #MODE_WORLD_READABLE
     */
    public static final int MODE_WORLD_WRITEABLE = 0x0002;
    /**
     * File creation mode: for use with {@link #openFileOutput}, if the file
     * already exists then write data to the end of the existing file
     * instead of erasing it.
     * @see #openFileOutput
     */
    public static final int MODE_APPEND = 0x8000;


 

2、

//创建文件夹

File destDir = new File(“/data/data/[your path]/temp”);
  if (!destDir.exists()) {
   destDir.mkdirs();
  }

Process p;
int status;
            try {
                p = Runtime.getRuntime().exec("chmod 777 " +  destDir );
                status = p.waitFor();   
                if (status == 0) {    
                    //chmod succeed   
                    Toast.makeText(this, "chmod succeed", Toast.LENGTH_LONG).show();
                } else {    
                    //chmod failed 
                    Toast.makeText(this, "chmod failed", Toast.LENGTH_LONG).show();
                }  
            }

 

友情提醒:

如果是在sdcard下插入,最好先判断sdcard是否插入,代码如下
//首先判断sdcard是否插入
String status = Environment.getExternalStorageState();
  if (status.equals(Environment.MEDIA_MOUNTED)) {
   return true;
  } else {
   return false;
  }

转载于:https://www.cnblogs.com/mochaMM/p/5070908.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/262286.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python中直方图-Numpy,Python中的“拉伸”直方图(级别)

这是一种方法- def stretch(a,lower_thresh,upper_thresh): r 255.0/(upper_thresh-lower_thresh2) # unit of stretching out np.round(r*(a-lower_thresh1)).astype(a.dtype) # stretched values out[a out[a>upper_thresh] 255 return out 根据OP,设置的标准是&#x…

Windows 2008 R2服务管理器刷新失败

在更新补丁的过程中&#xff0c;服务器强制重启后&#xff0c;在正常开机登录到系统后 打开服务器管理&#xff0c;角色及功能错误无法打开&#xff0c;参考以下链接解决。 参考 http://yewind.blog.51cto.com/33144/379097 http://social.technet.microsoft.com/Forums/en-US…

预处理指令

由ANSI的标准规定, 预处理指令主要包括: #define #error #if #else #elif #endif #ifdef #ifndef #undef #line #pragma 由上述指令可以看出, 每个预处理指令均带有符号"#"。下面只介绍一些常 用指令。 …

MFC字体

GDI字体分3类&#xff1a;点阵字体&#xff08;raster font&#xff09;、笔画字体&#xff08;stroke font&#xff09;和Truetype字体。 默认点阵字体有7种&#xff1a; System &#xff08;用于SYSTEM_FONT&#xff09; 无衬线 西方 有衬线 gb2312…

decimal double java_Java BigDecimal和double BigDecimal类

BigDecimal类对于不需要任何准确计算精度的数字可以直接使用float或double&#xff0c;但是如果需要精确计算的结果&#xff0c;则必须使用BigDecimal类&#xff0c;而且使用BigDecimal类也可以进行大数的操作。BigDecimal类的常用方法如表11-15所示。表11-15 BigDecimal类的常…

python自然语言处理案例-Python自然语言处理 NLTK 库用法入门教程【经典】

本文实例讲述了Python自然语言处理 NLTK 库用法。分享给大家供大家参考&#xff0c;具体如下&#xff1a; 在这篇文章中&#xff0c;我们将基于 Python 讨论自然语言处理&#xff08;NLP&#xff09;。本教程将会使用 Python NLTK 库。NLTK 是一个当下流行的&#xff0c;用于自…

分享45套2011年和2012年的高质量免费网站模板

日期&#xff1a;2012-11-11 来源&#xff1a;GBin1.com 前端时间我们分享了12套超酷的后台管理员界面网站模板&#xff0c;相信看过的朋友肯定已收入囊中了&#xff0c;今天呢&#xff0c;我们继续推荐45套高质量的免费网站模版&#xff0c;相信如果需要自己搭建网站的朋友肯…

基于PageRank的作弊检测算法

Spam Rank TrustRank Topical TrustRank Anti-Trust Rank HostRank BadRank 转载于:https://www.cnblogs.com/youwang/archive/2009/11/12/2310659.html

使用log4j日志-配置载入问题

1.在eclipse中&#xff0c;把log4j.properties放在类路径下&#xff0c;在项目启动时就会自己主动载入。2.在idea中。把log4j.properties放在类路径下&#xff0c;可是项目启动时不能直接载入&#xff08;原因不明白&#xff0c;哎&#xff0c;这个让我纠结了一下午&#xff01…

水晶报表中对某一栏位值进行处理_【节能学院】能耗管理系统在某超市嘉兴店二期工程的设计与应用...

摘要&#xff1a;随着社会生活水平的提高&#xff0c;经济的繁荣发展&#xff0c;人们对能源的需求逐渐增长&#xff0c;由此带来的能源危机日益严重。学校建筑如何实时的了解、分析和控制学校的能源消耗已成为需要解决的迫在眉睫的难题。传统的能源消耗智能以月/季度/年为周期…

python数据分析天气预报论文_用python+sklearn(机器学习)实现天气预报数据 模型和使用...

项目地址系列教程0.前言在上一篇教程里我们已经获取了所需要的全部数据&#xff0c;包括训练数据集和测试数据集&#xff0c;使用ProcessData()调用&#xff0c;所以接下来写模型的建立和预测1.建立模型没段代码在文章后面都会整合成一段&#xff0c;分段展示只是便于阅读a.准备…

偶然在网上看到的题目,jQuery功底如何一测便知晓!!!!!!

笔者最终实现的效果如下&#xff1a;    参考答案下载地址 通过手写html代码实现如图效果&#xff1a;以下题目全部使用jQuery来做 当点击“加载数据”按钮时根据提供的数据通过jQuery动态创建表格数据填充该表格。数据见data.txt文件。效果如图&#xff1a; 当点击“设置样…

何为生气

天下有不如意事&#xff0c;不当忿激与争。   ———陈于陛   生活中经常有人为一些小事而生气&#xff0c;其实他们也不想这样做&#xff0c;但就是控制不了自己的心情。生气不但影响了自己的身心健康&#xff0c;而且还影响到周围的人际关系。   从前&#xff0c;有个妇…

ps作业素材和成品_没有用过PS的画框工具,你还敢说你是设计大佬?

大家好&#xff0c;过完春节大伙们都踏上了离乡的征程&#xff0c;再多不舍&#xff0c;看看自己的钱包&#xff0c;还是要出发&#xff01;2019年已经悄然过去一个半月&#xff0c;你的学习计划开始了嘛&#xff1f;来吧继续学习PS-cc2019,今天继续给大家带来CC2019 ps 的基础…

isfile java_isfile 方法

检验给出的路径是否是一个文件:os.path.isfile() 6.检验给出的路...从零开始-JSP动态网页制作基础培训教程 6、判断是文件还是文件夹 使用File类对象的isFile()方法(返回True表示 为文件)和isDirectory()方法(返回True表示为文 件夹......A、 FileReader B、BufferedReader C、…

第二次阅读作业

No Silver Bullet - Essence and Accidents of Software Engineering&#xff1a; 银弹能杀死狼人。如果我没记错的话&#xff0c;在漫画中柯南对黑暗组织而言就是一颗银弹。生活中是不是真的有银弹我还是不太确定。假如有&#xff0c;银弹就是 一点弱点也没有么&#xff1f;如…

Linux 每日一练习!!反单引号·(键盘上数字1左边)··

2019独角兽企业重金招聘Python工程师标准>>> ls -al locate ls # 说明locate ls执行出来的路径将会作为ls -al的参数 说明&#xff1a;在一串指令中&#xff0c;在之内的指令将会被先执行&#xff0c;而且执行出来的结果将作为外部的输入信息 转载于:https://my.osc…

订单不断,我是这样做的

为什么同样是上网,同样是做生意,可是有人单都做不完,有人却接不到订单,这是为何呢?我从去年下半年一路走来,虽说一年多了,大的成绩没什么,可还算可以吧.比上不足,比下还是有余.最先接触电子商务平台的是阿里.然后就是化工报价网www.chembj.com了.再者其他的一些网站.好了,闲话…

python迭代器使用_python迭代器的使用方法实例

什么是迭代器&#xff1f;迭代器是带有next方法的简单对象&#xff0c;当然也要实现__iter__函数。迭代器能在一序列的值上进行迭代&#xff0c;当没有可供迭代时&#xff0c;next方法就会引发StopIteration 的异常。python中有很多的对象都是迭代器&#xff0c;例如&#xff1…

docker-compose观察实时日志_大数据项目实战之在线教育(03实时需求) - 十一vs十一...

第1章Spark Streaming概念 Spark Streaming 是核心Spark API的扩展&#xff0c;可实现实时数据的可扩展&#xff0c;高吞吐量&#xff0c;容错处理。数据可以从许多来源(如Kafka,Flume,Kinesis,或TCP套接字)中获取&#xff0c;并可以使用高级函数进行处理&#xff0c;处理完后的…