一种扫描文件的方法及系统技术方案

技术编号:29253928 阅读:20 留言:0更新日期:2021-07-13 17:24
本发明专利技术提供一种扫描文件的方法及系统,根据存储设备的ID,确定是否存在与ID对应的数据库;若存在,删除数据库中与存储设备中的文件不一致的文件;扫描存储设备,获取数据库中不存在的多个新文件,将多个新文件批量插入数据库;若不存在数据库,创建数据库;扫描存储设备,将扫描得到的存储设备中的多个文件批量插入数据库。本方案中,确定是否存在与存储设备对应的数据库。若存在,删除数据库中与存储设备中的文件不一致的文件,并将新文件批量存储至数据库。若不存在,创建数据库,将存储设备中的多个文件批量插入数据库。不需要每次拔插存储设备都清除数据库,以及存储文件时采取批量存储的方式,降低扫描时间,提高扫描速度和扫描效率。

【技术实现步骤摘要】
一种扫描文件的方法及系统
本专利技术涉及数据处理
,具体涉及一种扫描文件的方法及系统。
技术介绍
随着电子技术的发展,汽车的电子化程度也越来越高,许多汽车上都配备了车机系统。用户在通过车机系统的USB接口插入存储设备时,车机系统扫描并播放存储设备中的多媒体文件。目前车机系统扫描存储设备中的文件的方式为:每次在车机系统的USB接口中拔插存储设备时,都需要清除数据库并重新全盘扫描存储设备,并且每扫描到一条数据就操作一次数据库。但是,每次拔插存储设备都需要重新全盘扫描,以及每扫描到一条数据就操作一次数据库,需要较长的扫描时间,扫描速度低和扫描效率低。
技术实现思路
有鉴于此,本专利技术实施例提供一种扫描文件的方法及系统,以解决现有扫描文件的方式存在的扫描时间长,扫描速度低和扫描效率低等问题。为实现上述目的,本专利技术实施例提供如下技术方案:本专利技术实施例第一方面公开一种扫描文件的方法,所述方法包括:根据存储设备的ID,确定是否存在与所述ID对应的数据库;若存在所述数据库,删除所述数据库中与所述存储设备中的文件不一致的文件;扫描所述存储设备,获取所述数据库中不存在的多个新文件,将所述多个新文件批量插入所述数据库;若不存在所述数据库,创建所述数据库;扫描所述存储设备,将扫描得到的所述存储设备中的多个文件批量插入所述数据库。优选的,所述删除所述数据库中与所述存储设备中的文件不一致的文件,包括:扫描所述数据库中的文件;>针对扫描得到所述数据库中的每一文件,判断所述文件是否存在所述存储设备中;若所述文件不存在所述存储设备中,删除所述文件。优选的,所述扫描所述存储设备,获取所述数据库中不存在的多个新文件,将所述多个新文件批量插入所述数据库,包括:扫描所述存储设备,获取所述数据库中不存在的新文件;将所述新文件存储至缓存中;判断是否完成所述存储设备的扫描;若完成所述存储设备的扫描,利用事务处理,将所述缓存中的一个以上所述新文件批量插入所述数据库;若未完成所述存储设备的扫描,返回执行扫描所述存储设备这一步骤。优选的,所述扫描所述存储设备,获取所述数据库中不存在的多个新文件,将所述多个新文件批量插入所述数据库,包括:扫描所述存储设备,获取所述数据库中不存在的新文件;将所述新文件存储至缓存中;判断是否完成所述存储设备的扫描;若完成所述存储设备的扫描,利用事务处理,将所述缓存中的一个以上所述新文件批量插入所述数据库;若未完成所述存储设备的扫描,确定所述缓存中的所述新文件的个数是否等于个数阈值;若所述缓存中的所述新文件的个数小于所述个数阈值,返回执行扫描所述存储设备这一步骤;若所述缓存中的所述新文件的个数等于所述个数阈值,利用事务处理,将所述缓存中的所有所述新文件批量插入所述数据库,返回执行扫描所述存储设备这一步骤。优选的,所述扫描所述存储设备,将扫描得到的所述存储设备中的多个文件批量插入所述数据库,包括:扫描所述存储设备,获取所述存储设备的文件;确定所述存储设备的文件是否存在所述数据库中;若所述存储设备的文件存在所述数据库中,返回执行扫描所述存储设备这一步骤;若所述存储设备的文件不存在所述数据库中,将所述存储设备的文件存储至缓存中;判断是否完成所述存储设备的扫描;若完成所述存储设备的扫描,利用事务处理,将所述缓存中的一个以上所述文件批量插入所述数据库;若未完成所述存储设备的扫描,返回执行扫描所述存储设备这一步骤。优选的,所述扫描所述存储设备,将扫描得到的所述存储设备中的多个文件批量插入所述数据库,包括:扫描所述存储设备,获取所述存储设备的文件;确定所述存储设备的文件是否存在所述数据库中;若所述存储设备的文件存在所述数据库中,返回执行扫描所述存储设备这一步骤;若所述存储设备的文件不存在所述数据库中,将所述存储设备的文件存储至缓存中;判断是否完成所述存储设备的扫描;若完成所述存储设备的扫描,利用事务处理,将所述缓存中的一个以上文件批量插入所述数据库;若未完成所述存储设备的扫描,确定所述缓存中的文件的个数是否等于个数阈值;若所述缓存中的文件的个数小于所述个数阈值,返回执行扫描所述存储设备这一步骤;若所述缓存中的文件的个数等于所述个数阈值,利用事务处理,将所述缓存中的所有文件批量插入所述数据库,返回执行扫描所述存储设备这一步骤。优选的,所述扫描所述存储设备,获取所述数据库中不存在的多个新文件,将所述多个新文件批量插入所述数据库,包括:根据JNI在C++层扫描所述存储设备,获取所述数据库中不存在的多个新文件,通过JNI在JAVA层将所述多个新文件批量插入所述数据库;相应的,所述扫描所述存储设备,将扫描得到的所述存储设备中的多个文件批量插入所述数据库,包括:根据JNI在C++层扫描所述存储设备,通过JNI在JAVA层将扫描得到的所述存储设备中的多个文件批量插入所述数据库。优选的,所述根据存储设备的ID,确定是否存在与所述ID对应的数据库之前,还包括:利用NetlinkEvent,添加存储设备的ID;挂载所述存储设备。本专利技术实施例第二方面公开一种扫描文件的系统,所述系统包括:确定单元,用于根据存储设备的ID,确定是否存在与所述ID对应的数据库,若存在所述数据库,执行删除单元,若不存在所述数据库,执行创建单元;所述删除单元,用于删除所述数据库中与所述存储设备中的文件不一致的文件,执行第一扫描单元;所述第一扫描单元,用于扫描所述存储设备,获取所述数据库中不存在的多个新文件,将所述多个新文件批量插入所述数据库;所述创建单元,用于创建所述数据库,执行第二扫描单元;所述第二扫描单元,用于扫描所述存储设备,将扫描得到的所述存储设备中的多个文件批量插入所述数据库。优选的,所述删除单元具体用于:扫描所述数据库中的文件,针对扫描得到所述数据库中的每一文件,判断所述文件是否存在所述存储设备中,若所述文件不存在所述存储设备中,删除所述文件。基于上述本专利技术实施例提供的一种扫描文件的方法及系统,该方法为:根据存储设备的ID,确定是否存在与ID对应的数据库;若存在,删除数据库中与存储设备中的文件不一致的文件;扫描存储设备,获取数据库中不存在的多个新文件,将多个新文件批量插入数据库;若不存在数据库,创建数据库;扫描存储设备,将扫描得到的存储设备中的多个文件批量插入数据库。本方案中,确定是否存在与存储设备对应的数据库。若存在,删除数据库中与存储设备中的文件不一致的文件,并将新文件批量存储至数据库。若不存在,创建数据库,将存储设备中的多个文件批量插入数据库。不需要每次拔插存储设备都清除数据库,以及存储文件时采取批量存储的方式,降低扫描时间,提高扫描速度本文档来自技高网...

【技术保护点】
1.一种扫描文件的方法,其特征在于,所述方法包括:/n根据存储设备的ID,确定是否存在与所述ID对应的数据库;/n若存在所述数据库,删除所述数据库中与所述存储设备中的文件不一致的文件;/n扫描所述存储设备,获取所述数据库中不存在的多个新文件,将所述多个新文件批量插入所述数据库;/n若不存在所述数据库,创建所述数据库;/n扫描所述存储设备,将扫描得到的所述存储设备中的多个文件批量插入所述数据库。/n

【技术特征摘要】
1.一种扫描文件的方法,其特征在于,所述方法包括:
根据存储设备的ID,确定是否存在与所述ID对应的数据库;
若存在所述数据库,删除所述数据库中与所述存储设备中的文件不一致的文件;
扫描所述存储设备,获取所述数据库中不存在的多个新文件,将所述多个新文件批量插入所述数据库;
若不存在所述数据库,创建所述数据库;
扫描所述存储设备,将扫描得到的所述存储设备中的多个文件批量插入所述数据库。


2.根据权利要求1所述的方法,其特征在于,所述删除所述数据库中与所述存储设备中的文件不一致的文件,包括:
扫描所述数据库中的文件;
针对扫描得到所述数据库中的每一文件,判断所述文件是否存在所述存储设备中;
若所述文件不存在所述存储设备中,删除所述文件。


3.根据权利要求1所述的方法,其特征在于,所述扫描所述存储设备,获取所述数据库中不存在的多个新文件,将所述多个新文件批量插入所述数据库,包括:
扫描所述存储设备,获取所述数据库中不存在的新文件;
将所述新文件存储至缓存中;
判断是否完成所述存储设备的扫描;
若完成所述存储设备的扫描,利用事务处理,将所述缓存中的一个以上所述新文件批量插入所述数据库;
若未完成所述存储设备的扫描,返回执行扫描所述存储设备这一步骤。


4.根据权利要求1所述的方法,其特征在于,所述扫描所述存储设备,获取所述数据库中不存在的多个新文件,将所述多个新文件批量插入所述数据库,包括:
扫描所述存储设备,获取所述数据库中不存在的新文件;
将所述新文件存储至缓存中;
判断是否完成所述存储设备的扫描;
若完成所述存储设备的扫描,利用事务处理,将所述缓存中的一个以上所述新文件批量插入所述数据库;
若未完成所述存储设备的扫描,确定所述缓存中的所述新文件的个数是否等于个数阈值;
若所述缓存中的所述新文件的个数小于所述个数阈值,返回执行扫描所述存储设备这一步骤;
若所述缓存中的所述新文件的个数等于所述个数阈值,利用事务处理,将所述缓存中的所有所述新文件批量插入所述数据库,返回执行扫描所述存储设备这一步骤。


5.根据权利要求1所述的方法,其特征在于,所述扫描所述存储设备,将扫描得到的所述存储设备中的多个文件批量插入所述数据库,包括:
扫描所述存储设备,获取所述存储设备的文件;
确定所述存储设备的文件是否存在所述数据库中;
若所述存储设备的文件存在所述数据库中,返回执行扫描所述存储设备这一步骤;
若所述存储设备的文件不存在所述数据库中,将所述存储设备的文件存储至缓存中;
判断是否完成所述存储设备的扫描;
若完成所述存储设备的扫描,利用事务处理,将所述缓存中的一个以上所述文件批量插入所述数据库;
若未完成所述存储...

【专利技术属性】
技术研发人员:陈辉
申请(专利权)人:北京四维智联科技有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1