数据表的显示方法和装置的制造方法【
技术领域:
】[0001]本发明涉及数据处理领域,具体而言,涉及一种数据表的显示方法和装置。【
背景技术:
】[0002]随着网络环境的不断升级、移动设备性能的持续提高,在移动设备上办公,成为越来越多用户的首选。在移动设备上办公,就需要在移动设备上增加各种办公文档的打开功能。其中,XLS就是一种工作表文档(即数据表文档),是一种非常常用的电子表格格式,该文件用于保存和展示各种表格数据。在手机终端上,XLS文档的阅读都采用开源软件POI的方案,也即,首先读取XLS文件,将读取到的XLS文件解析生成POI对象,然后通过HTML转换器将POI对象映射成Dom对象,并将Dom对象保存成html文件,以及通知webview加载该html文件并显示。[0003]经过对现有的实现方案的分析,发现现有的技术方案打开XLS文档性能很差,主要有以下三个环节导致的:[0004](I)现有方案在解析XLS文件生成POI对象的过程中,将XLS文件一次性的生成完整POI对象,这个过程需要频繁的做读写1操作,完整读取的耗时长。[0005](2)现有方案是将整个POI对象完全转成Dom对象,这个过程中不仅需要频繁分配内存,一次性将POI对象转成Dom对象要花费很长时间,该种操作方式可能导致终端的内存不足,有可能导致终端应用卡死或崩溃。[0006](3)现有方案中需要将整个表单sheet完全转成网页html中的表格table,而如果表单sheet大,就会导致生成的table表也会很大,Webview在展现大的table时耗时长。[0007]由上述分析可知,现有的实现方案在打开数据容量很大的XLS文件时需要占用很多的系统资源,打开速度非常慢。例如:如果XLS文档中的一个sheet具有1000行左右的数据,打开时间大概需要1秒,打开10000行用到了150秒左右。而且一个XLS文件一般会有多个sheet,因此需要更多的时间。在切换sheet时候由于webview对大table的展现性能也不好,显示1000行数据也要4秒左右的时间。对于一个定位为阅读功能的文档应用,打开XLS文档花费了过长的时间,用户完全不能接受。[0008]针对上述打开XLS文件时打开速度慢的问题,目前尚未提出有效的解决方案。【
发明内容】[0009]本发明实施例提供了一种数据表的显示方法和装置,以至少解决打开XLS文件时打开速度慢的技术问题。[0010]根据本发明实施例的一个方面,提供了一种数据表的显示方法,该方法包括:获取通过终端的屏幕输入的用于显示数据表的显示指令,其中,所述数据表被划分成多个数据块;响应于所述显示指令确定所述多个数据块中与所述终端的屏幕上的视图尺寸相匹配的待显示的部分数据块;读取所述待显示的部分数据块中与所述视图尺寸相匹配的数据;在所述终端的屏幕上显示读取到的所述数据。[0011]根据本发明实施例的另一方面,还提供了一种数据表的显示装置,该装置包括:第一获取单元,用于获取通过终端的屏幕输入的用于显示数据表的显示指令,其中,所述数据表被划分成多个数据块;响应单元,用于响应于所述显示指令确定所述多个数据块中与所述终端的屏幕上的视图尺寸相匹配的待显示的部分数据块;第一读取单元,用于读取所述待显示的部分数据块中与所述视图尺寸相匹配的数据;第一显示单元,用于在所述终端的屏幕上显示读取到的所述数据。[0012]在本发明实施例中,在获取显示指令之后,按照显示指令和终端屏幕上视图尺寸确定待显示的数据表中的部分数据块,读取该部分数据块中与视图尺寸匹配的数据,并将该数据显示在终端的屏幕上。与现有技术中一次性读取、转换和显示的方案相比,本申请的方案在显示数据表时,显示指令指示显示哪部分数据块的数据,则读取该部分数据块的数据,并显示,由于数据表被换分为多个数据块,在每次显示时,仅对其中的一部分做操作,操作的数据量小,耗费系统资源小,操作速度快,一般可以在ms级别的时间内即可完成部分数据块的显示,显示速度快,解决了现有技术中打开XLS文件时打开速度慢的问题,实现了快速显示XLS文件的效果。【附图说明】[0013]此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:[0014]图1是根据本发明实施例的一种终端的硬件环境示意图;[0015]图2是根据本发明实施例的一种可选的数据表的显示方法的流程图;[0016]图3是根据本发明实施例的一种可选的数据表与视图尺寸对比的示意图;[0017]图4是根据本发明实施例的一种可选的数据表的显示方法的流程图;[0018]图5是根据本发明实施例的一种可选的数据表的显示装置的示意图;[0019]图6是根据本发明实施例的一种可选地终端的内部结构示意图。【具体实施方式】[0020]首先,对本发明实施例中涉及的术语解释如下:[0021]XLS文档:XLS就是微软的Excel工作表,是一种非常常用的电子表格格式。XLS文件可以在PC端使用MicrosoftExcel打开,在手机终端一般都是采用开源软件POI的方案打开。一个XLS表格文件中,可能包含有多个sheet,而每个sheet实际上就是XLS文档中的一个子表格。[0022]Ρ0Ι:是Apache软件基金会的开放源码函数库,是用Java编写的免费开源的跨平台的函数库,其为应用程序提供读写Excel、W0RD等微软0LE2组件文档功能的接口。[0023]数据块:XLS文档中存储数据的基本单位是数据块。[0024]View:是安卓系统的一个基础类,是安卓系统中一个用来画图形或图像的地方。每一个View都有一个用于绘图的画布,这个画布可以进行任意扩展。[0025]为了使本
技术领域:
的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。[0026]需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。[0027]实施例1[0028]根据本发明实施例,提供了一种数据表的显示方法的实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。[0029]可选地,上述数据表的显示方法可以应用于如图1所示的终端10和服务器30所构成的硬件环境中,终端可以与服务器通过网络建立连接。上述的终端可以为移动终端,如智能手机、平板电脑和PDA,以及其他的手持设备。[0030]上述网络包括但不限于:广域网、城域网或局域网。优选地,上述的网络为局域网。[0031]根据本发明实施例,提供了一种数据表的显示方法,如图2所示,该方法包括:[0032]步骤S202:获取通过终端的屏幕输入的用于显示数据表的显示指令,其中,数据表被划分成多个数据块。[0033]步骤S204:响应于显示指令确定多个数据块中与终端的屏幕上的视图尺寸相匹配的待显示的部分数据块。[0034]步骤S206:读取待显示的部分数据块中与视图尺寸相匹配的数据。[0035]步骤S208:在终端的屏幕上显示读取到的数据。[0036]采用本发明上述实施例,在获取显示指令之后,按照显示指令和终端屏幕上视图尺寸确定待显示的数据表中的部分数据块,读取该部分数据块中与视图尺寸匹配的数据,并将该数据显示在终端的屏幕上。与现有技术中一次性读取、转换和显示的方案相比,本申请的方案在显示数据表时,显示指令指示显示哪部分数据块的数据,则读取该部分数据块的数据,并显示,由于数据表被换分为多个数据块,在每次显示时,仅对其中的一部分做操作,操作的数据量小,耗费系统资源小,操作速度快,一般可以在ms级别的时间内即可完成部分数据块的显示,显示速度快,解决了现有技术中打开)(LS文件时打开速度慢的问题,实现了快速显示XLS文件的效果。[0037]本发明实施例中的数据表可以为XLS格式的文件,该XLS格式的文件在存储使被划分成多个数据块,数据块的数据容量可以相同也可以不同,若数据块的数据容量小于预设容量,可以将位置相邻的数据块合并为新的数据块,在执行显示操作时,将该合并后的新的数据块作为一个整体的数据块,对其进行读取或渲染的操作。[0038]上述实施例中的终端可以为移动终端,通过移动终端的屏幕输入的显示指令,可以为用户操作终端的屏幕输入的触摸指令,如长按指令、滑动指令等,本申请对显示指令的形式不作限定。[0039]终端的屏幕上的视图尺寸可以为该屏幕的大小,若在终端的屏幕上分屏显示或悬浮显示该待显示的部分数据块,则该分屏显示的区域大小或悬浮显示的区域大小为视图尺寸。当前第1页1 2 3 4 5