技术领域
[0001] 本
发明涉及智能终端内存显示的技术领域,尤其涉及一种文件管理器中的内部存储显示方法。
背景技术
[0002] 如今,手机已经不仅仅是一个通讯设备,在智能系统的潮流之下,手机已经成了一个多媒体的智能移动终端,有人喜欢用手机上QQ,玩微博,看网页;有人喜欢听歌,拍照,玩游戏;有人利用手机进行日程的安排和办公等等。这样就导致我们的系统非常庞大,文件和文件夹非常众多,我们在文件管理器中找一些需要但不知道名称的文件或者文件夹非常困难。平时我们用得最多的文件有蓝牙传输文件,图片文件,下载的文件,视频文件和音乐文件,其他系统文件和应用安装的文件我们基本不会用到,也不用去理会。基于此需求,我们在改变了内部存储设备根目录的显示。
发明内容
[0003] 针对上述技术中存在的不足之处,本发明提供一种通过改变内部存储根目录显示的文件管理器中的内部存储显示方法。
[0004] 为了达到上述目的,本发明一种文件管理器中的内部存储显示方法,包括以下实现步骤:
[0005] 在文件管理器中确认要显示的文件夹名称;
[0006] 创建一个数组systemDefaultPath来进行判断是否是对应要显示的文件夹名称;
[0007] 进入文件管理器的内部存储,获取根目录的所有文件信息;
[0008] 判断根目录中的文件或文件夹信息是否与systemDefaultPath数组中的某一文件夹相匹配;
[0009] 如果有匹配,则将这些文件或文件夹添加到显示的文件夹中,并将这些文件或文件夹进行显示操作;
[0010] 如果没有匹配,则不进行显示操作,隐藏为非默认的文件或文件夹,并且统计对应的数据信息;
[0011] 根据统计信息创建虚拟文件夹,并将统计得到的内部文件数量、创建时间以及
修改时间进行显示;
[0012] 点击虚拟文件夹,显示之前进行隐藏为非默认的文件以及文件夹。
[0013] 其中,系统的真实文件在文件管理器的根目录中是以KbxLocalFile类的方式进行储存的,在确认是否与systemDefaultPath数组中的某一文件夹相匹配时,判断以下文件或文件夹的信息是否匹配:
[0014] private java.lang.String mFilePath;//文件路径;
[0015] private com.kanbox.filemgr.KbxLocalFile.FileType mFileType;//文件类型;
[0016] private long mFileSize;//文件大小;
[0017] private long mLastModifyTime;//文件最后修改时间;
[0018] private long mCreateTime;//文件的创建时间;
[0019] private java.lang.String mAppName;//文件名称;
[0020] private java.lang.String mShowName;//文件显示名称;
[0021] private int mSubfileCount;//文件夹内部多少文件;
[0022] private boolean mIsFolder;//是否是文件夹。
[0023] 其中,通过判断传进来的文件列表的文件名称是否跟systemDefaultPath数组中的其中一个文件夹相匹配,如果是的话就将该文件信息添加到systemDefaultPath数组中文件夹的文件列表中,如果不是的话就记录下不是的systemDefaultPath的列表数量,文件大小,文件最后修改时间,文件的创建时间,在传进来文件列表中最后一个的时候,将不是的数量进行统计,进行创建虚拟文件夹,并将该数据加入显示在出进来的文件列表中,根文件夹下只有对应想要的文件夹。
[0024] 其中,当点击虚拟文件夹时,将systemFolder设置为false,同时进入根文件路径,并且获得根文件数据列表,通过判断systemFolder是否为false来区分是显示系统文件夹的内容还是那六个文件夹的内容;当systemFolder为false时,通过判断虚拟文件夹的文件列表的文件名称是否跟systemDefaultPath中的其中一个一样,如果是的话就将该文件信息不添加到虚拟文件夹的文件列表中,假如不是的话就添加到虚拟文件夹的文件列表中进行显示;
[0025] systemFolder定义为一个标志位,如果进入的是根文件的话,systemFolder为true,如果进入的是系统文件夹的话,systemFolder为false。
[0026] 其中,在文件管理器中确认要显示的文件夹名称包括蓝牙文件夹、照片文件夹、下载文件夹、视频文件夹、音乐文件夹以及系统文件夹。
[0027] 其中,创建数组systemDefaultPath的具体方式为:
[0028] private static final String[] systemDefaultPath = {
[0029] "bluetooth","DCIM",
[0030] "Download","Movies",
[0031] "Music","System"}。
[0032] systemDefaultPath是系统默认文件夹路径;
[0033] systemFolder是系统文件夹的标志位;
[0034] KbxLocalFile是虚拟本地文件的映射。
[0035] 本发明的有益效果是:
[0036] 与
现有技术相比,本发明的文件管理器中的内部存储显示方法,文件管理器的效果只是改变显示的效果,并没有进行有效的修改文件的路径,因此在选择实现该需求时只改变显示的效果,而不直接修改文件路径。内部存储只显示数组systemDefaultPath所对应要显示的文件夹名称,这样所有的文件就可以一页显示完成,一目了然,能满足用户快速查找文件的需求。该显示方式仅仅是方便用户需要,并未改变任何文件路径。内部存储连接到其他设备时,正常显示全部文件夹。
附图说明
[0037] 图1为本发明文件管理器中的内部存储显示方法的流程示意图。
具体实施方式
[0038] 为了更清楚地表述本发明,下面结合附图对本发明作进一步地描述。
[0039] 由于文件管理器的效果只是改变显示的效果,并没有进行有效的修改文件的路径,因此在选择实现该需求时只能够在改变显示的效果,而不能够直接修改文件路径。通过观察代码可知文件管理器的显示文件是通过筛选转换文件信息来获得对应的要进行显示文件跟文件夹列表的,因此要实现该需求就要在这里做文章了。
[0040] 参阅图1,本发明一种文件管理器中的内部存储显示方法,包括以下实现步骤:
[0041] 在文件管理器中确认要显示的文件夹名称;
[0042] 创建一个数组systemDefaultPath来进行判断是否是对应要显示的文件夹名称;
[0043] 进入文件管理器的内部存储,获取根目录的所有文件信息;
[0044] 判断根目录中的文件或文件夹信息是否与systemDefaultPath数组中的某一文件夹相匹配;
[0045] 如果有匹配,则将这些文件或文件夹添加到显示的文件夹中,并将这些文件或文件夹进行显示操作;
[0046] 如果没有匹配,则不进行显示操作,隐藏为非默认的文件或文件夹,并且统计对应的数据信息;
[0047] 根据统计信息创建虚拟文件夹,并将统计得到的内部文件数量、创建时间以及修改时间进行显示;
[0048] 点击虚拟文件夹,显示之前进行隐藏为非默认的文件以及文件夹。
[0049] 系统的文件夹列表的数据是通过文件种类列表适配器获得每行数据的函数来显示对应的每个数据的,但是文件种类列表适配器的总数据是通过文件管理核心的获得文件种类列表适配器的函数来获得当前路径的总数据,但是不是并不是所有的总数据都要进行显示的,而是通过筛选转换文件信息来进行选择对应需要的数据进行显示文件列表及其文件信息;添加到显示文件列表当中。
[0050] systemDefaultPath是系统默认文件夹路径;
[0051] systemFolder是系统文件夹的标志位;
[0052] KbxLocalFile是虚拟本地文件的映射。
[0053] 相较于现有技术,本发明的文件管理器中的内部存储显示方法,文件管理器的效果只是改变显示的效果,并没有进行有效的修改文件的路径,因此在选择实现该需求时只改变显示的效果,而不直接修改文件路径。内部存储只显示数组systemDefaultPath所对应要显示的文件夹名称,这样所有的文件就可以一页显示完成,一目了然,能满足用户快速查找文件的需求。该显示方式仅仅是方便用户需要,并未改变任何文件路径。内部存储连接到其他设备时,正常显示全部文件夹。
[0054] 在本
实施例中,系统的真实文件在文件管理器的根目录中是以KbxLocalFile类的方式进行储存的,在确认是否与systemDefaultPath数组中的某一文件夹相匹配时,判断以下文件或文件夹的信息是否匹配:
[0055] private java.lang.String mFilePath;//文件路径;
[0056] private com.kanbox.filemgr.KbxLocalFile.FileType mFileType;//文件类型;
[0057] private long mFileSize;//文件大小;
[0058] private long mLastModifyTime;//文件最后修改时间;
[0059] private long mCreateTime;//文件的创建时间;
[0060] private java.lang.String mAppName;//文件名称;
[0061] private java.lang.String mShowName;//文件显示名称;
[0062] private int mSubfileCount;//文件夹内部多少文件;
[0063] private boolean mIsFolder;//是否是文件夹。
[0064] 在本实施例中 ,通过判断传进来的文件列表的 文件 名称是否跟systemDefaultPath数组中的在本实施例中一个文件夹相匹配,如果是的话就将该文件信息添加到systemDefaultPath数组中文件夹的文件列表中,如果不是的话就记录下不是的systemDefaultPath的列表数量,文件大小,文件最后修改时间,文件的创建时间,在传进来文件列表中最后一个的时候,将不是的数量进行统计,进行创建虚拟文件夹,并将该数据加入显示在出进来的文件列表中,根文件夹下只有对应想要的文件夹。
[0065] 在本实施例中,当点击虚拟文件夹时,将systemFolder设置为false,同时进入根文件路径,并且获得根文件数据列表,通过判断systemFolder是否为false来区分是显示系统文件夹的内容还是那六个文件夹的内容;当systemFolder为false时,通过判断虚拟文件夹的文件列表的文件名称是否跟systemDefaultPath中的在本实施例中一个一样,如果是的话就将该文件信息不添加到虚拟文件夹的文件列表中,假如不是的话就添加到虚拟文件夹的文件列表中进行显示;
[0066] systemFolder定义为一个标志位,如果进入的是根文件的话,systemFolder为true,如果进入的是系统文件夹的话,systemFolder为false。
[0067] 在本实施例中,在文件管理器中确认要显示的文件夹名称包括蓝牙文件夹、照片文件夹、下载文件夹、视频文件夹、音乐文件夹以及系统文件夹。
[0068] 在本实施例中,创建数组systemDefaultPath的具体方式为:
[0069] private static final String[] systemDefaultPath = {
[0070] "bluetooth","DCIM",
[0071] "Download","Movies",
[0072] "Music","System"}。
[0073] 以上公开的仅为本发明的几个具体实施例,但是本发明并非局限于此,任何本领域的技术人员能思之的变化都应落入本发明的保护范围。