码迷,mamicode.com
首页 > 移动开发 > 详细

【Android】解析Android的路径

时间:2018-04-03 14:31:04      阅读:251      评论:0      收藏:0      [点我收藏+]

标签:span   data   seo   round   blog   ref   tle   env   外部   

目录结构:

contents structure [+]

 

Android中的路径主要分为内部路径和外部路径。

一.内部路径

常见的内部存储路径有:

File f1=Environment.getDataDirectory();                                 //  /data
File f2=Environment.getDownloadCacheDirectory();                        //  /cache
File f3=Environment.getRootDirectory();                                 //  /system
File f4= context.getCacheDir();                                         //  /data/data/com.example.fileexiststest/cache
File f5= context.getDatabasePath("abc.db");                             //  /data/data/com.example.fileexiststest/databases/abc.db
File f6= context.getFilesDir();                                         //  /data/data/com.example.fileexiststest/files
File f7= context.getFileStreamPath("test2.txt");                        //  /data/data/com.example.fileexiststest/files/test2.txt


需要注意,内部存储的文件夹和文件只有在手机Root之后,才会看见,而且内部路径中的文件一般是只读的。
通过上面的观察可以看出,内部存储的公共缓存路径在/cache文件下,私有缓存路径在/data/data/包名/下,每个私有缓存路径下又有三个子目录,分别为cache,databases,files。cache路径是做缓存用的,databases路径是存储数据库文件的,平常使用的sqllite数据库就存放在这个目录中,files是存储其他文件的。

二.外部路径

常用的外部路径有:

File f1=Environment.getExternalStorageDirectory();             //  /storage/emulated/0
File f2=Environment.getExternalStoragePublicDirectory("abc");  //  /storage/emulated/0/abc
File f3= this.getExternalCacheDir();                           //  /storage/emulated/0/Android/data/com.example.fileexiststest/cache
File f4= this.getExternalFilesDir("test");                     //  /storage/emulated/0/Android/data/com.example.fileexiststest/files/test
File f5= this.getObbDir();                                     //  /storage/emulated/0/Android/obb/com.example.fileexiststest

在手机的内存中,可以找到/storage/emulated/0这个目录,但是里面并没有数据,但是查看这个目录的大小却发现有数据,这是因为数据被隐藏了的。

/storage/emulated/0的目录就是外部存储的目录。
在上面已经了解到,内存存储的文件是只读的,如果想要写入数据,那么就只好存到外部路径中了。
外部路径和内存路径的结构都差不多。还是分为共有路径和私有路径,共有路径下可以随意建文件和目录进行存储数据。私有目录的格式为 /android/data/包名/。公共路径的数据可以被所有程序访问,私有路径下的数据就只能被当前程序访问。

【Android】解析Android的路径

标签:span   data   seo   round   blog   ref   tle   env   外部   

原文地址:https://www.cnblogs.com/HDK2016/p/8707866.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!