一种文件上传方法、装置、电子设备及可读存储介质与流程

文档序号:17889669发布日期:2019-06-13 15:29阅读:135来源:国知局
一种文件上传方法、装置、电子设备及可读存储介质与流程

本发明涉及文件处理技术领域,特别是涉及一种文件上传方法、装置、电子设备及可读存储介质。



背景技术:

目前,常常需要将压缩文件上传至服务器,并且,将压缩文件上传至服务器的方式为:直接将压缩文件上传至服务器。

发明人在实现本发明的过程中发现,电子设备在生成压缩文件的过程中,该电子设备的操作系统常常会生成一些文件夹,并将这些文件夹添加到压缩文件中。这样,目前的文件上传方式使得服务器需要提供存储空间来存储这些文件夹。而在通常情况下这些文件夹对于用户而言是无用,这样,造成了服务器的存储资源的浪费。



技术实现要素:

本发明实施例的目的在于提供一种新的文件上传方法、装置、电子设备及可读存储介质,以减少对服务器存储资源的浪费。具体技术方案如下:

第一方面,本发明实施例提供了一种文件上传方法,应用于第一电子设备,该方法可以包括:

获得待上传的压缩文件;

当接收到针对压缩文件的上传指令时,检测压缩文件中是否包含目标文件夹;其中,目标文件夹是:在生成压缩文件的过程中,由生成压缩文件的第二电子设备的操作系统所生成的文件夹;

若否,将压缩文件上传至服务器;

若是,将压缩文件中的目标文件夹删除,得到新的压缩文件,并将新的压缩文件上传至服务器。

可选地,检测压缩文件中是否包含目标文件夹的步骤,可以包括:

对压缩文件进行解压缩,得到解压缩文件;

当第一电子设备和第二电子设备的操作系统不相同时,查找解压缩文件中是否存在目标文件夹。

可选地,在对压缩文件进行解压缩,得到解压缩文件的步骤之后,还可以包括:

当第一电子设备和第二电子设备的操作系统相同时,将解压缩文件中处于隐藏状态的文件夹设置为可见状态,并查找解压缩文件中是否存在目标文件夹。

可选地,查找解压缩文件中是否存在目标文件夹的步骤,可以包括:

确定解压缩文件中的各个文件和文件夹的排列次序;排列次序是按照各个文件和文件夹的修改时间进行排序的;

判断位于预设排序区域内的文件夹中是否存在目标文件夹。

可选地,第二电子设备可以包括:微软操作系统电子设备或苹果操作系统电子设备;当第二电子设备为苹果操作系统电子设备时,目标文件夹可以包括:_macosx文件夹。

第二方面,本发明实施例提供了一种文件上传装置,应用于第一电子设备,该装置可以包括:

获得模块,用于获得待上传的压缩文件;

检测模块,用于当接收到针对压缩文件的上传指令时,检测压缩文件中是否包含目标文件夹;其中,目标文件夹是:在生成压缩文件的过程中,由生成压缩文件的第二电子设备的操作系统所生成的文件夹;

第一上传模块,用于当检测压缩文件中不包含目标文件夹时,将压缩文件上传至服务器;

第二上传模块,用于当检测压缩文件中包含目标文件夹时,将压缩文件中的目标文件夹删除,得到新的压缩文件,并将新的压缩文件上传至服务器。

可选地,在本发明实施例中,检测模块可以包括:

解压缩单元,用于对压缩文件进行解压缩,得到解压缩文件;

第一判断单元,用于当第一电子设备和第二电子设备的操作系统不相同时,查找解压缩文件中是否存在目标文件夹。

可选地,在本发明实施例中,该装置还可以包括:

第二判断单元,用于当第一电子设备和第二电子设备的操作系统相同时,将解压缩文件中处于隐藏状态的文件夹设置为可见状态,并查找解压缩文件中是否存在目标文件夹。

可选地,在本发明实施例中,第一判断单元具体可以用于:

当第一电子设备和第二电子设备的操作系统不相同时,确定解压缩文件中的各个文件和文件夹的排列次序;排列次序是按照各个文件和文件夹的修改时间进行排序的;

判断位于预设排序区域内的文件夹中是否存在目标文件夹。

可选地,在本发明实施例中,第二电子设备可以包括:微软操作系统电子设备或苹果操作系统电子设备;当第二电子设备为苹果操作系统电子设备时,目标文件夹包括:_macosx文件夹。

第三方面,本发明实施例提供了一种第一电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;

存储器,用于存放计算机程序;

处理器,用于执行存储器上所存放的程序时,实现上述任一项文件上传方法的方法步骤。

第四方面,本发明实施例提供了一种可读存储介质,可读存储介质内存储有计算机程序,计算机程序被第一电子设备的处理器执行时实现上述任一项文件上传方法的方法步骤。

第五方面,本发明实施例还提供了一种包含指令的计算机程序产品,当其在第一电子设备上运行时,使得第一电子设备执行:上述任一项文件上传方法的方法步骤。

在本发明实施例中,第一电子设备可以获得待上传的压缩文件。并且,当接收到针对压缩文件的上传指令时,第一电子设备可以检测压缩文件中是否包含目标文件夹。由于该目标文件夹是:在生成压缩文件的过程中,由生成压缩文件的第二电子设备的操作系统所生成的文件夹,即该目标文件夹是用户并不需要的文件夹。因而,当检测到压缩文件中包含该目标文件夹时,第一电子设备可以将该压缩文件中的目标文件夹删除,从而得到新的压缩文件,进而将该新的压缩文件上传至服务器。另外,当检测到压缩文件中不包含该目标文件夹时,可以直接将该压缩文件上传至服务器。这样,可以将不包含目标文件夹的压缩文件上传至服务器,减少了对服务器存储资源的浪费。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例提供的一种文件上传方法的流程图;

图2为本发明实施例提供的一种文件上传装置的结构示意图;

图3为本发明实施例提供的一种第一电子设备的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

发明人在实现本发明的过程中发现,电子设备在对文件和/或文件夹进行压缩得到压缩文件后,该压缩文件中除了包含:用户想要压缩的文件和/或文件夹之外,还常常包含有目标文件夹。其中,该目标文件夹是:在生成该压缩文件的过程中,由该电子设备的操作系统所生成的文件夹。而且,该目标文件夹被设置为隐藏状态,即该目标文件夹是对用户不可见的。另外,文件的上传速度是文件上传的一个重要指标,减慢上传速度会使用户的文件上传体验受到影响。因而,在上传压缩文件过程中通常不会对压缩文件进行检测。

发明人还发现,现有技术中的直接上传压缩文件的上传方式,会将目标文件夹也上传至服务器中,这样会造成服务器存储资源的浪费。

为了解决上述技术问题,本发明实施例提供了一种新的文件上传方法、装置、电子设备及可读存储介质。

下面首先对本发明实施例提供的文件上传方法进行说明。

本发明实施例提供的文件上传方法可以应用于第一电子设备。该第一电子设备包括但并不局限于台式电脑、笔记本电脑和服务器。

参见图1,该文件上传方法可以包括如下步骤:

s101:获得待上传的压缩文件;

s102:当接收到针对压缩文件的上传指令时,检测压缩文件中是否包含目标文件夹;其中,目标文件夹是:在生成压缩文件的过程中,由生成压缩文件的第二电子设备的操作系统所生成的文件夹;若否,执行步骤s103;若是,执行步骤s104;

其中,该待上传的压缩文件可以为zip压缩包,也可以为rar压缩包,当然并不局限于此。并且,该待上传的压缩文件是:第二电子设备利用压缩算法,对待压缩文件和/或待压缩文件夹进行压缩后得到的。

可以理解的是,该压缩算法包括但并不局限于zip压缩算法和rar压缩算法。另外,第二电子设备和第一电子设备可以为同一个电子设备,也可以为不同的电子设备,这都是合理的。

其中,当第一电子设备与第二电子设备为不同的电子设备,并且,第一电子设备和第二电子设备的操作系统不相同时,第一电子设备可以检测该压缩文件中是否包含目标文件夹。具体地,第一电子设备可以先对压缩文件进行解压缩,得到解压缩文件;然后,查找解压缩文件中是否存在目标文件夹。进而,可以确定压缩文件中是否存在目标文件夹。

举例而言,第一电子设备为微软操作系统电子设备、第二电子设备为苹果操作系统电子设备。当第二电子设备对文件a进行压缩后,生成待上传的压缩文件。其中,该压缩文件中除了包含文件a之外,该压缩文件中还包含:在生成该压缩文件的过程中,由第二电子设备的苹果操作系统所生成的目标文件夹。在该示例下,第一电子设备在获得该压缩文件后,可以对该压缩文件进行解压,从而得到解压缩文件,然后可以查找解压缩文件中是否存在目标文件夹。

其中,发明人在实现本发明的过程中发现,操作系统为苹果操作系统的第二电子设备会将该目标文件夹设置为隐藏状态,即用户在第二电子设备中点开该压缩文件中时,该目标文件夹对用户并不可见。但是,当操作系统为微软操作系统的第一电子设备在获取该压缩文件后,用户在第一电子设备中点开该压缩文件时,该目标文件夹对用户是可见。也就是说,当第一电子设备为微软操作系统电子设备、第二电子设备为苹果操作系统电子设备时,第一电子设备在得到解压缩文件后,该目标文件夹是处于可见状态的。在该种情况下,第一电子设备可以查找所显示的解压缩文件中是否存在目标文件夹。

发明人还发现,操作系统为苹果操作系统的第二电子设备在生成压缩文件后,该压缩文件中包含的目标文件夹包括:_macosx文件夹。

另外,当第一电子设备与第二电子设备是同一个电子设备时,第一电子设备和第二电子设备的操作系统相同。假设第一电子设备的操作系统为苹果操作系统。那么,第一电子设备在获得解压缩文件之后,还可以将解压缩文件中处于隐藏状态的文件夹设置为可见状态。然后,可以查找所显示的解压缩文件中是否存在目标文件夹。进而,可以确定压缩文件中是否存在目标文件夹。

其中,查找解压缩文件中是否存在目标文件夹的具体操作可以为:确定解压缩文件中的各个文件和文件夹的排列次序。其中,排列次序是按照各个文件和文件夹的修改时间(即修改先后顺序)进行排序的。然后,判断位于预设排序区域内的文件夹中是否存在目标文件夹。这样,可以只检测位于预设排序区域内的文件夹中是否存在目标文件夹,从而提高检测速度。

s103:将压缩文件上传至服务器;

s104:将压缩文件中的目标文件夹删除,得到新的压缩文件,并将新的压缩文件上传至服务器。

其中,当检测到压缩文件中不包含目标文件夹时,可以直接将压缩文件上传至服务器。当检测到压缩文件中包含目标文件时,可以将压缩文件中的目标文件进行删除,得到新的压缩文件,并将新的压缩文件上传至服务器。这样,可以将不包含目标文件夹的压缩文件上传至服务器,减少了对服务器存储资源的浪费。

结合上文可知,发明人发现苹果操作系统的电子设备在生成压缩文件的过程中,会生成目标文件夹。另外,发明人还发现微软操作系统的电子设备在生成压缩文件的过程中不会生成目标文件夹。因而,在第一电子设备为苹果操作系统的电子设备且检测到压缩文件中包含目标文件夹的情况下,第一电子设备还可以在删除该目标文件夹后,调用预设压缩软件对删除该目标文件夹后的解压缩文件进行压缩,得到新的压缩文件。其中,该预设压缩软件为:生成压缩文件过程中不生成目标文件夹的软件。这是合理的。

在本发明实施例中,第一电子设备可以获得待上传的压缩文件。并且,当接收到针对压缩文件的上传指令时,第一电子设备可以检测压缩文件中是否包含目标文件夹。由于该目标文件夹是:在生成压缩文件的过程中,由生成压缩文件的第二电子设备的操作系统所生成的文件夹,即该目标文件夹是用户并不需要的文件夹。因而,当检测到压缩文件中包含该目标文件夹时,第一电子设备可以将该压缩文件中的目标文件夹删除,从而得到新的压缩文件,进而将该新的压缩文件上传至服务器。另外,当检测到压缩文件中不包含该目标文件夹时,可以直接将该压缩文件上传至服务器。这样,可以将不包含目标文件夹的压缩文件上传至服务器,减少了对服务器存储资源的浪费。

下面结合具体示例对本发明实施例提供的文件上传方法进行说明。

假设本发明实施例中的第二电子设备为安装有苹果操作系统的设备、第一电子设备为安装有windows操作系统或linux操作系统的设备,服务器为云存储服务器。另外,界面设计人员利用第二电子设备生成针对皮肤图片的压缩文件,其中,该压缩文件为待上传至云存储服务器的皮肤资源包。然后,该界面设备人员通过第二电子设备将该压缩文件传输至第一电子设备。

第一电子设备接收到该压缩文件之后,运营人员可以通过第一电子设备将该压缩文件上传至云存储服务器。其中,在上传过程中,第一电子设备可以检测该压缩文件是否包含_macosx文件夹。由于该压缩文件是在安装有苹果操作系统的第二电子设备中生成的,因而第一电子设备可以检测出压缩文件中包含_macosx文件夹。然后,可以将压缩文件中的_macosx文件夹删除,然后重新生成新的压缩文件,并将新的压缩文件上传至服务器中。这样,减少了皮肤资源包所需要占用的云存储空间,降低了运营人员所在公司的云存储资源开销。

另外,对于检测到压缩文件中不包含_macosx文件夹情况,第一电子设备可以直接将压缩文件上传至云存储服务器中。

综上,应用本发明实施例,可以将不包含目标文件夹的压缩文件上传至服务器,减少了对服务器存储资源的浪费。

相应于上述方法实施例,本发明实施例提供了一种文件上传装置,应用于第一电子设备,参见图2,该装置可以包括:

获得模块201,用于获得待上传的压缩文件;

检测模块202,用于当接收到针对压缩文件的上传指令时,检测压缩文件中是否包含目标文件夹;其中,目标文件夹是:在生成压缩文件的过程中,由生成压缩文件的第二电子设备的操作系统所生成的文件夹;

第一上传模块203,用于当检测压缩文件中不包含目标文件夹时,将压缩文件上传至服务器;

第二上传模块204,用于当检测压缩文件中包含目标文件夹时,将压缩文件中的目标文件夹删除,得到新的压缩文件,并将新的压缩文件上传至服务器。

应用本发明实施例提供的装置,第一电子设备可以获得待上传的压缩文件。并且,当接收到针对压缩文件的上传指令时,第一电子设备可以检测压缩文件中是否包含目标文件夹。由于该目标文件夹是:在生成压缩文件的过程中,由生成压缩文件的第二电子设备的操作系统所生成的文件夹,即该目标文件夹是用户并不需要的文件夹。因而,当检测到压缩文件中包含该目标文件夹时,第一电子设备可以将该压缩文件中的目标文件夹删除,从而得到新的压缩文件,进而将该新的压缩文件上传至服务器。另外,当检测到压缩文件中不包含该目标文件夹时,可以直接将该压缩文件上传至服务器。这样,可以将不包含目标文件夹的压缩文件上传至服务器,减少了对服务器存储资源的浪费。

可选地,在本发明实施例中,检测模块202可以包括:

解压缩单元,用于对压缩文件进行解压缩,得到解压缩文件;

第一判断单元,用于当第一电子设备和第二电子设备的操作系统不相同时,查找解压缩文件中是否存在目标文件夹。

可选地,在本发明实施例中,该装置还可以包括:

第二判断单元,用于当第一电子设备和第二电子设备的操作系统相同时,将解压缩文件中处于隐藏状态的文件夹设置为可见状态,并查找解压缩文件中是否存在目标文件夹。

可选地,在本发明实施例中,第一判断单元具体可以用于:

当第一电子设备和第二电子设备的操作系统不相同时,确定解压缩文件中的各个文件和文件夹的排列次序;排列次序是按照各个文件和文件夹的修改时间进行排序的;

判断位于预设排序区域内的文件夹中是否存在目标文件夹。

可选地,在本发明实施例中,第二电子设备包括:微软操作系统电子设备或苹果操作系统电子设备;当第二电子设备为苹果操作系统电子设备时,目标文件夹包括:_macosx文件夹。

相应于上述方法实施例,本发明实施例还提供了第一电子设备,参见图3,包括处理器301、通信接口302、存储器303和通信总线304,其中,处理器301,通信接口302,存储器303通过通信总线304完成相互间的通信;

存储器303,用于存放计算机程序;

处理器301,用于执行存储器303上所存放的程序时,实现上述任一项文件上传方法的方法步骤。

在本发明实施例中,第一电子设备可以获得待上传的压缩文件。并且,当接收到针对压缩文件的上传指令时,第一电子设备可以检测压缩文件中是否包含目标文件夹。由于该目标文件夹是:在生成压缩文件的过程中,由生成压缩文件的第二电子设备的操作系统所生成的文件夹,即该目标文件夹是用户并不需要的文件夹。因而,当检测到压缩文件中包含该目标文件夹时,第一电子设备可以将该压缩文件中的目标文件夹删除,从而得到新的压缩文件,进而将该新的压缩文件上传至服务器。另外,当检测到压缩文件中不包含该目标文件夹时,可以直接将该压缩文件上传至服务器。这样,可以将不包含目标文件夹的压缩文件上传至服务器,减少了对服务器存储资源的浪费。

相应于上述方法实施例,本发明实施例还提供了一种可读存储介质,可读存储介质内存储有计算机程序,计算机程序被第一电子设备的处理器执行时实现上述任一项文件上传方法的方法步骤。

本发明实施例提供的可读存储介质中存储的计算机程序被第一电子设备的处理器执行后,第一电子设备可以获得待上传的压缩文件。并且,当接收到针对压缩文件的上传指令时,第一电子设备可以检测压缩文件中是否包含目标文件夹。由于该目标文件夹是:在生成压缩文件的过程中,由生成压缩文件的第二电子设备的操作系统所生成的文件夹,即该目标文件夹是用户并不需要的文件夹。因而,当检测到压缩文件中包含该目标文件夹时,第一电子设备可以将该压缩文件中的目标文件夹删除,从而得到新的压缩文件,进而将该新的压缩文件上传至服务器。另外,当检测到压缩文件中不包含该目标文件夹时,可以直接将该压缩文件上传至服务器。这样,可以将不包含目标文件夹的压缩文件上传至服务器,减少了对服务器存储资源的浪费。

相应于上述方法实施例,本发明实施例还提供了一种包含指令的计算机程序产品,当其在第一电子设备上运行时,使得第一电子设备执行上述任一项文件上传方法的方法步骤。

本发明实施例提供的计算机程序产品被第一电子设备的处理器执行后,第一电子设备可以获得待上传的压缩文件。并且,当接收到针对压缩文件的上传指令时,第一电子设备可以检测压缩文件中是否包含目标文件夹。由于该目标文件夹是:在生成压缩文件的过程中,由生成压缩文件的第二电子设备的操作系统所生成的文件夹,即该目标文件夹是用户并不需要的文件夹。因而,当检测到压缩文件中包含该目标文件夹时,第一电子设备可以将该压缩文件中的目标文件夹删除,从而得到新的压缩文件,进而将该新的压缩文件上传至服务器。另外,当检测到压缩文件中不包含该目标文件夹时,可以直接将该压缩文件上传至服务器。这样,可以将不包含目标文件夹的压缩文件上传至服务器,减少了对服务器存储资源的浪费。

上述电子设备提到的通信总线可以是外设部件互连标准(peripheralcomponentinterconnect,pci)总线或扩展工业标准结构(extendedindustrystandardarchitecture,eisa)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。

通信接口用于上述电子设备与其他设备之间的通信。

存储器可以包括随机存取存储器(randomaccessmemory,ram),也可以包括非易失性存储器(non-volatilememory,nvm),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。

上述的处理器可以是通用处理器,包括中央处理器(centralprocessingunit,cpu)、网络处理器(networkprocessor,np)等;还可以是数字信号处理器(digitalsignalprocessing,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现场可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。

在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如固态硬盘solidstatedisk(ssd))等。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、第一电子设备、可读存储介质和计算机程序产品实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1