CN114595199A - 文件解析方法、装置、计算机设备和存储介质 - Google Patents
文件解析方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN114595199A CN114595199A CN202210500704.XA CN202210500704A CN114595199A CN 114595199 A CN114595199 A CN 114595199A CN 202210500704 A CN202210500704 A CN 202210500704A CN 114595199 A CN114595199 A CN 114595199A
- Authority
- CN
- China
- Prior art keywords
- file
- configuration file
- configuration
- processed
- uploaded
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/16—File or folder operations, e.g. details of user interfaces specifically adapted to file systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/172—Caching, prefetching or hoarding of files
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请涉及一种文件解析方法、装置、计算机设备和存储介质。所述方法包括:获取上传的文件类型,并从缓存中查询与所述文件类型对应的配置文件,配置文件是预先加载、校验和解析后存储至缓存的;获取上传的文件流,根据所述配置文件对所述文件流进行解析得到待处理目标;根据所述配置文件对所述待处理目标进行校验;根据所述配置文件将校验完成的所述待处理目标转换为业务对象。所述方法包括:获取上传的文件,对所述文件进行处理得到文件信息;根据所述文件信息调用所述的文件解析方法实现的接口,以对上传的文件进行解析;获取解析后的业务对象。采用本方法能够减少了开发量。
Description
技术领域
本申请涉及人工智能技术领域,特别是涉及一种文件解析方法、装置、计算机设备和存储介质。
背景技术
随着人工智能技术的发展,出现了文件解析技术,通过对文件进行解析,以得到文件中的内容,并转换为自己所需要的信息。
传统技术中,一个目标系统需要对接多个待处理系统,多个待处理系统输出各种不同格式的文件,目标系统在对该些文件进行处理的时候需要针对每一个待处理系统均编写不同的代码进行处理。
然而,目前的针对每个待处理系统编写不同的代码进行处理,开发量大。
发明内容
基于此,有必要针对上述技术问题,提供一种能够减少开发量的文件解析方法、装置、计算机设备和存储介质。
一种文件解析方法,所述方法包括:
获取上传的文件类型,并从缓存中查询与所述文件类型对应的配置文件,所述配置文件是预先加载、校验和解析后存储至缓存的;
获取上传的文件流,根据所述配置文件对所述文件流进行解析得到待处理目标;
根据所述配置文件对所述待处理目标进行校验;
根据所述配置文件将校验完成的所述待处理目标转换为业务对象。
在其中一个实施例中,所述根据所述配置文件对所述文件流进行解析得到待处理目标,包括:
获取所述配置文件中的处理器,并通过所述处理器对所述文件流进行预处理;
根据预处理后的文件流构建元数据对象作为待处理目标。
在其中一个实施例中,所述根据所述配置文件对所述待处理目标进行校验,包括:
根据所述配置文件对表头进行校验;
当所述表头检验通过时,则对各字段中的数据进行校验。
在其中一个实施例中,所述对各字段中的数据进行校验,包括:
对各字段中的数据进行单字段校验和多字段关联性校验中的至少一个,所述单字段校验和多字段关联性校验是基于默认校验规则和/或自定义校验规则进行校验的。
在其中一个实施例中,所述根据所述配置文件将校验完成的所述待处理目标转换为业务对象之后,还包括:
生成解析记录,并将所述解析记录存入日志。
在其中一个实施例中,所述获取上传的文件类型,查询与所述文件类型对应的配置文件,包括:
获取上传的文件类型,并基于所述上传的文件类型将上传的文件流存储至环形缓存中;
从缓存中查询与所述文件类型对应的配置文件;
所述根据所述配置文件对所述文件流进行解析得到待处理目标,包括:
基于承诺模式的异步回调处理方式根据所述配置文件对所述文件流进行解析得到待处理目标。
在其中一个实施例中,所述方法还包括:
读取配置文件,并对配置文件进行解析后进行xsd校验;
当校验通过时,读取数据处理器定义,通过反射生成对象实例,并记录处理器名称和对象实例的映射关系;
读取文件类型定义,记录文件类型与配置文件的映射关系;
构造配置文件对应的XLSReader并存入缓存中。
一种文件解析方法,所述方法包括:
获取上传的文件,对所述文件进行处理得到文件信息;
根据所述文件信息调用根据权利要求1至7任意一项所述的文件解析方法实现的接口,以对上传的文件进行解析;
获取解析后的业务对象。
在其中一个实施例中,所述获取解析后的业务对象之后,包括:
对所述业务对象进行后加工;
将后加工后的业务对象存入业务表中。
一种文件解析装置,所述装置包括:
配置文件查询模块,用于获取上传的文件类型,并从缓存中查询与所述文件类型对应的配置文件,所述配置文件是预先加载、校验和解析后存储至缓存的;
第一解析模块,用于获取上传的文件流,根据所述配置文件对所述文件流进行解析得到待处理目标;
校验模块,用于根据所述配置文件对所述待处理目标进行校验;
转换模块,用于根据所述配置文件将校验完成的所述待处理目标转换为业务对象。
一种文件解析装置,所述装置包括:
文件获取模块,用于获取上传的文件,对所述文件进行处理得到文件信息;
第二解析模块,用于根据所述文件信息调用根据上述的文件解析方法实现的接口,以对上传的文件进行解析;
业务对象获取模块,用于获取解析后的业务对象。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述任意一个实施例中所述的方法的步骤。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意一个实施例中所述的方法的步骤。
上述文件解析方法、装置、计算机设备和存储介质,根据配置文件来对上传的文件流进行解析、校验和转换得到业务对象,服务器中仅需要设置对应的配置文件,不需要针对每种类型的文件进行完整的代码的编写,减少了开发量。
附图说明
图1为一个实施例中文件解析方法的应用环境图;
图2为一个实施例中文件解析方法的流程示意图;
图3为一个实施例中的配置文件加载步骤的流程图;
图4为另一个实施例中文件解析方法的流程示意图;
图5为再一个实施例中文件解析方法的流程示意图;
图6为另一个实施例中解析过程的详细的流程图;
图7为一个实施例中文件解析装置的结构框图;
图8另为一个实施例中文件解析装置的结构框图;
图9为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供的文件解析方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与服务器104进行通信。终端102向服务器104发送文件,服务器104获取上传的文件类型,并从缓存中查询与文件类型对应的配置文件,并且服务器104获取上传的文件流,根据配置文件对文件流进行解析得到待处理目标;根据配置文件对待处理目标进行校验;根据配置文件将校验完成的待处理目标转换为业务对象。这样服务器根据配置文件来对上传的文件流进行解析、校验和转换得到业务对象,服务器中仅需要设置对应的配置文件,不需要针对每种类型的文件进行完整的代码的编写,减少了开发量。
其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备,服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一个实施例中,如图2所示,提供了一种文件解析方法,以该方法应用于图1中的服务器为例进行说明,包括以下步骤:
S202:获取上传的文件类型,并从缓存中查询与文件类型对应的配置文件,配置文件是预先加载、校验和解析后存储至缓存的。
具体地,配置文件是预先加载至缓存中的,其中服务器在开机或者其他的时间加载配置文件至缓存中,这样可以在处理流程中应尽可能减少和数据库的交互,在容器启动时加载配置并缓存,提高文件处理服务的性能和稳定性。
具体地,可以参见图3所示,图3为一个实施例中的配置文件加载步骤的流程图,在该实施例中,服务器读取配置文件,并对配置文件进行解析后进行xsd校验,例如判断配置文件的语法是否满足要求,若是,则使用ConfigurationAPI构造ParseConfig对象,具体地包括:读取数据处理器定义,通过反射生成对象实例,并记录处理器名称和对象实例的映射关系,读取文件类型定义,记录文件类型到配置文件的映射关系,读取配置文件,构造XLSReader并存入缓存中,若是发生错误,则输出配置文件加载异常。
其中配置文件包括文件类型,其定义了页与模板id的关系,包括一个页一个模块,多个页一个模板,或者多个页多个模板,但是每个页仅能对应一个模板。配置文件中还定义了模板,其包括模板id、模板描述、对应model类名以及数据处理器设置等。配置文件中还包括了数据解析,例如表头配置、字段path、字段中文明、所在列、所在行、校验规则配置、错误信息配置(带变量)等。
具体地,文件类型是指每个文件的类型,其可以是根据上传的文件来定义,例如每个终端上传的文件均不同,则一个终端对应一个类型,若终端中存在多个类型的文件,则文件类型可以通过终端以及文件的标识来进行标识。
其中,获取上传的文件类型,查询与文件类型对应的配置文件,包括:获取上传的文件类型,并基于上传的文件类型将上传的文件流存储至环形缓存中;基于承诺模式的异步回调处理方式从缓存中查询与文件类型对应的配置文件。此外,文件解析接口提供同步调用接口和异步调用接口,异步调用接口将返回一个Promise对象,也就是说根据所述配置文件对所述文件流进行解析得到待处理目标也是通过基于承诺模式的异步回调处理方式。其中,返回XLSResult对象,该对象包含业务对象和校验信息等。返回包含XLSResult对象的Promise对象。所谓的Promise对象,简单说就是一个容器,里面保存着某个未来才会结束的事件(通常是一个异步操作)的结果。
具体地,为了提高框架性能,选择基于事件(消息)驱动的Disruptor框架来作为异步任务处理的内部实现。Disruptor实现了一个轻量级的高性能无锁的新型并发框架,Disruptor的核心是使用了新型的数据结构RingBuffer。
而对于异步回调处理方式则是采用基于承诺的方式,其中Promise 编程模式也被称为 thenable,可以理解为延迟后执行。这种模式不会阻塞和等待长时间的操作完成,而是返回一个代表承诺(promise)的对象。promise对象代表一个可能会在将来某一时间可用(或现已可用)的值。每个 promise 对象都拥有一个叫做 then 的接口,当 Promise 失败或成功时就会被进行回调。
Promises/A+规范要求then函数会返回一个新的promise,该promise是被指向回调函数(成功执行或者捕获异常)解析之后的结果,这样promise之间便能进行链式操作。为此,本实施例中选用简单可重用的基础框架reactor包来构建基于事件和数据驱动的应用程序,reactor作为Spring.io核心包下面的项目包括并浓缩了reactor设计模式和promise模式,其中RingBufferDispatcher是基于Disruptor来实现的。
S204:获取上传的文件流,根据配置文件对文件流进行解析得到待处理目标。
具体地,文件以文件流的方式上传,这样服务器可以一边接收文件一边对文件进行解析处理,以提高处理效率。其中解析是通过处理器对文件流进行解析的过程,包括但不限于数据预处理和元数据对象的构造。其中在获取文件流时,每个单元格的位置是由一个二维坐标(i,j)给定,对于合并单元格的以最左,最上的单元格的坐标为准,excel文件有两种格式(.xls(2003),.xlsx(2007)),XSSFWorkbook用来加载后缀名为.xlsx文件的,HSSFWorkbook用来加载后缀名为.xls文件的。
首先服务器根据文件类型代码查找对应的解析配置文件,如果没有找到抛出异常NotFoundParserConfigException,如果有设置数据处理器,转换前先对String值进行数据预处理,如果转换发生错误,则抛出XLSDataReadException(包含单元格的位置信息和错误提示信息)。其中数据预处理包括但不限于大小写转换、全半角符号处理、空字符处理和自定义处理。
在实际应用中,文件解析过程:包括初始化、文件解析、数据校验、数据转换和文件处理记录。
电子表格数据文件的解析处理过程:
(1)用户调用本软件的接口,传入文件信息fileInfo对象作为参数,通过该fileInfo对象本框架获取到上传的文件流、文件类型、待构造的业务数据。
(2)根据文件类型获取到模板配置,进而根据模板配置中的模板id获取到对应的配置文件。如果没有找到抛出异常NotFoundParserConfigException。
(3)使用XLSReader类逐行读取并解析电子表格文件,并根据mapping配置将单元格内容转换到数据对象中,如果有设置数据处理器,转换前先对String值进行数据预处理,如果转换发生错误,则抛出XLSDataReadException(包含单元格的位置信息和错误提示信息);解析过程中,还会根据sectioncheck配置校验特定单元格内容的值是否符合定义,如果校验不通过,则抛出XLSDataReadException;当单元格解析成功的话,还要把单元格的位置信息(CellPosition)记录到上下文validateContext中。
(4)解析完成后,将文件处理状态记录到文件批次处理表。如果没有错误,将得到构造好的业务数据对象,并可进入业务规则校验环节。如果解析异常,将异常信息记录到日志表并抛出异常。S206:根据配置文件对待处理目标进行校验。
具体地,校验是指对excel文档中的各个单元格的内容进行校验,包括表头校验和各个字段的校验,其中,表头校验包括验证上传的文件格式是否和模板定义相符合,包括页名、表头列名和表头位置。字段的校验包括单字段校验和关联校验,单字段校验包括格式校验和自定义规则校验,关联校验可以包括单行校验和多行校验。
服务器根据sectioncheck配置校验特定单元格内容的值是否符合定义,如果校验不通过,则抛出XLSDataReadException;当单元格解析成功的话,还要把单元格的位置信息(CellPosition)记录到validateContext中。
S208:根据配置文件将校验完成的待处理目标转换为业务对象。
服务器还接收到待构造的业务数据对象map,即文件流中的字段与对应的业务字段的对应关系。服务器使用XLSReader逐行读取并解析excel文件,并根据业务数据对象map配置将单元格内容转换到业务数据对象中。
上述文件解析方法,根据配置文件来对上传的文件流进行解析、校验和转换得到业务对象,服务器中仅需要设置对应的配置文件,不需要针对每种类型的文件进行完整的代码的编写,减少了开发量。
在其中一个实施例中,根据配置文件对文件流进行解析得到待处理目标,包括:获取配置文件中的处理器,并通过处理器对文件流进行预处理;根据预处理后的文件流构建元数据对象作为待处理目标。
具体地,文件中的单元格分为两种基础字段,一种是标题另外一种是数值。从逻辑上看,整个文件主要包含两大部分:标题的配置(表头配置)和数值的配置(数据映射配置),配置采用xml格式来进行表示。配置根文件xls_parser.xml是不同业务类型的excel数据表的解析入口,包含数据处理器定义和文件类型解析定义两部分。其中数据处理器是用于对文件流进行预处理的,文件类型则是用于定义文件类型以获取到对应的配置文件的。这样服务器根据文件的配置根文件中的文件类型获取到配置文件,然后根据数据处理器定义按照配置文件对文件进行解析。
具体地,在实际应用中,电子表格中的单元格分为两类基础字段:标题,数值。如果某个单元格中同时包含标题和数值,比如“计划名称:**计划”,将这个单元格认为是带前缀的数值,解析时通过数据处理器去掉前缀得到真正要的值。那么,从逻辑上看,整个业务模板主要包含两大部分:标题的配置(表头配置)和数值的配置(数据映射配置),这些配置我们统称为文件解析配置,用xml来表示。配置根文件xls_parser.xml是不同业务类型的电子表格文件的解析入口,包含数据处理器定义和文件类型解析定义两部分。
具体地,一个文件可以有多个页,不同的页对应不同的文件解析配置,但一个页仅能对应一个文件解析配置。服务器可以根据页名称或页索引查找对应的文件解析配置,如果找不到解析时忽略该页的处理。其中此处的文件可以是指workbook,而页是指sheet。
具体地,XML文件的根元素是workbook,workbook可以包含多个子元素。文件标签应该使用名称属性或索引属性来指出它所描述的页。
文件元素可以包含任意数量的section和loop子元素。section元素,即列元素代表了一个简单的电子表格单元格块(block)。这个单元格块的首行和最后一行使用startRow和endRow属性来定义。服务器通过定义一系列的列来解析整个的页文件,也就是说即使不读取页的起始行,也要定义一个空的section,这样,这些行才会在XML文件中被反映出来,最后这些没用的行将被忽略掉。
具体地,服务器使用业务数据对象map配置将XLS文件的单元格映射到Java bean的属性中,即实现文件中的对象映射为业务对象,如:<mapping cell="E4">department.name</mapping>。在其他是实施例中服务器使用单元格的行号和列号(基于0,即起始为0)来定义要映射的单元格,如:<mapping row="3" col="4">department.chief.bonus</mapping>其表示定义了E4单元格,并把它映射到department.chief.bonus属性。
业务数据对象map配置中可以设置各字段的数据处理器,文件中也可以设置全局的数据处理器,在数据解析和转换时先按定义的顺序依次执行业务数据对象map配置中的数据处理器,然后再执行全局的数据处理器。
loop子元素用来定义一些循环(重复)的行,它应包含startRow和endRow属性来定义这些重复块的开始行和结束行。类似于JSTL标签,items属性代表了包含这些重复行的容器(Collection对象),var属性用来指示遍历时的容器的某一项,varType属性定义了var属性所代表的Java类全名。其中loop子元素可以包含任意数量的section和loop子元素。loop子元素必须包含loopbreakcondition来定义循环的跳出终止。
一列预处理可以包含多个行预处理, 行预处理可以包含多个单元格预处理,用来检查单元格的内容是否和配置的值一致。如果行预处理不包含任何单元格预处理,则表示检查是否为一个空行。预处理可以用来检查数据文件中的标题位置和值是否符合的定义。此外,服务器还使用mergeTo属性用来指定是否将读取到的新数据合并到原来的集合对象中。
在其中一个实施例中,根据配置文件对待处理目标进行校验,包括:根据配置文件对表头进行校验;当表头检验通过时,则对各字段中的数据进行校验。
具体地,在做数据导入的时候经常会遇到大量的数据校验,为了简化使用、减少冗余,服务器采用可扩展的Java对象数据验证框架OVAL(http://oval.sourceforge.net/)作为验证基础类库进行数据的校验。OVAL必须在JAVA5或更高版本上运行。OVAL的验证规则可以通过xml配置文件、Annotation注解、POJOs进行设定。服务器采用统一使用注解的方式来设置数据的校验规则和错误提示。
其中,表头校验包括验证上传的文件格式是否和模板定义相符合,包括页名、表头列名和表头位置。字段的校验包括单字段校验和关联校验,单字段校验包括格式校验和自定义规则校验,关联校验可以包括单行校验和多行校验,单字段校验和多字段关联性校验是基于默认校验规则和/或自定义校验规则进行校验的。
为了提高校验的效率,服务器可以先对表头进行校验,若校验成功,则并行对各个字段进行校验。
可选地,对各字段中的数据进行校验,包括:对各字段中的数据进行单字段校验和多字段关联性校验中的至少一个。
其中单字段校验一般是非关联性校验,用于对每个字段的格式进行校验,例如包括检查字段是否为空或非空,检查字段是否包含非空白字符,检查字段是否为非空值,检查是否小于等于最大值,检查是否大于等于最小值,数字格式校验,检查是否为非负值,数值范围校验,日期范围校验,检查是否匹配设定的模式,字符串长度范围校验,集合对象个数范围校验(包含字符串长度范围校验)以及检查与某个字段的值是否相等中的至少一个。
其中需要说明的是,若当前字段的校验来自其他字段,即校验当前字段之前需要校验相关字段,则先对相关字段进行校验,若相关字段校验通过才对当前字段进行校验。
若当前字段的约束来自其他字段,则根据其他字段对当前字段进行校验,例如验证邮件地址字段的值是否等于发票地址或者收单地址。
服务器还可以提供自定义单字段的校验方法,把要校验的字段值作为一个参数传入该方法,并返回true或false表示验证通过或不通过。
可选地,同一类内使用内部静态类作自定义校验扩展,其中可选地,服务器根据实际业务场景基于OVAL来扩展单字段的校验,由核心开发人员统一设计和维护,以供其他人开发人员使用。由于需要加入单元格位置信息sheetName、rowNo、colNo和cellName,因此服务器对OVAL进行二次封装,以便动态生成错误信息。
具体地,关联性校验包括同行校验和多行校验,其中同行校验是指同一行数据对象内字段之间的校验。比如:身份证为15或18位且要与性别和生日相符;当“归属核算日期类型”填写内容不为空时,“归属核算截止日期”为必填。这种场景的校验可使用内置校验规则来实现。
多行校验是全部数据对象之间的校验。比如,上传的文件中身份证号不能出现重复;对于养老保障产品,受托合同号+所属机构+姓名+证件类型+证件号码唯一。这种场景的校验由开发人员根据实际业务规则自行设计和维护(使用内部静态类作自定义校验扩展),完全独立于本模块,从而减少与数据库的交互,尽量提高处理效率。
其中,服务器还可以根据校验结果动态生成错误信息,校验完成后,将文件处理状态记录到文件批次处理表。如果校验通过,可得到构造好的业务数据对象(map),如果校验不通过,将错误信息记录到日志表并返回错误信息。其中可选地,在校验完成后,还根据单元格位置信息sheetName、rowNo、colNo和cellName对OVAL进行二次封装。
在其中一个实施例中,根据配置文件将校验完成的待处理目标转换为业务对象之后,还包括:生成解析记录,并将解析记录存入日志。
在每次解析完成,错误或者日常信息可以导入日志表中,文件的处理状态也可以导入日志表中,以便于后续查询。
在一个实施例中,如图4所示,提供了一种文件解析方法,以该方法应用于图1中的服务器为例进行说明,包括以下步骤:
S402:获取上传的文件,对文件进行处理得到文件信息。
具体地,服务器可以包括文件接收服务和文件处理服务,其中文件接收服务通过接口的方式调用文件处理服务,服务器通过文件接收服务获取到上传的文件,并获取文件信息,其中文件信息包括文件类型、文件流以及上述的业务数据对象map。
S404:根据文件信息调用根据上述任意一个实施例中的文件解析方法实现的接口,以对上传的文件进行解析。
具体地,本实施例中,文件解析通过接口的方式实现,这样服务器中的文件接收服务可以同步或者是异步的方式调用该接口,并通过该接口实现文件解析。
其中文件解析接口提供同步调用接口和异步调用接口,异步调用接口将返回一个Promise对象。具体地,可以基于spring reactor包来构造JVM上的异步应用(asynchronousapplications on the JVM)。具体地,使用RingBuffer作为事件存储,当事件达到时,将事件先存储在一个RingBuffer中,再交由固定大小的线程池统一调度。该线程池的线程大小和队列大小由配置文件指定,线程大小默认为CPU处理器核心数,队列大小默认为2048。WorkQueueDispatcher使用一个WorkerPool来处理事件,一个事件只能被workerPool中的一个EventHandler处理。可以看作是多生产者多消费者模式。
S406:获取解析后的业务对象。
最后在文件解析完成后,服务器获取到解析结果,也即业务对象,从而实现业务处理。
上述文件解析方法,根据配置文件来对上传的文件流进行解析、校验和转换得到业务对象,服务器中仅需要设置对应的配置文件,不需要针对每种类型的文件进行完整的代码的编写,减少了开发量。
在其中一个实施例中,获取解析后的业务对象,包括:对业务对象进行后加工;将后加工后的业务对象存入业务表中。
具体地,为了提高文件解析的效率,将一些复杂的校验或者是数据转换处理放在文件解析后,也即后加工,这样减少文件解析时内存的占用,提高文件解析的效率,最后将后加工后的业务对象存入业务表中以便于业务终端的调用。
具体地,参见图5所示,图5为再一个实施例中的文件解析方法的流程图,在该实施例中,具体包括配置文件的加载过程和文件解析过程。
其中配置文件加载过程:是将配置文件加载至缓存的过程,其中服务器解析配置文件并进行xsd校验,并使用ConfigurationAPI构造ParseConfig对象存入缓存中。
文件解析过程包括初始化、文件解析、数据校验、数据转换和文件处理记录。其中初始化是从所得到的文件信息,即fileInfo对象中获取到文件类型,并根据文件类型获取到模板配置,进而根据模板配置中的模板id获取到对应的配置文件。文件解析的过程是根据fileInfo对象获取到文件流,并通过配置文件中的处理器对文件流进行数据预处理,并构造元数据对象,包括位置信息、表头信息等。数据校验过程,则是对表头和各个字段进行校验的过程。数据转换过程,则是将校验成功的元数据转换为业务数据对象。其中,参见图6所示,图6给出了解析过程的详细的流程图。
在数据转换成功后,则生成日志以标识本次解析过程。并将解析结果返回,若是还需要其他校验或转换,则继续进行处理。
上述实施例中,解决了面向对象和Excel表格之间互不匹配的问题,将Excel表格的数据自动转换并映射到业务实体对象模型,当Excel表格发生变化时,只需要少量修改配置而不需大量改动原来的业务处理代码,且将业务逻辑和Excel的访问逻辑分离,采用接口调用的模式,使得开发人员更专注业务自身功能的开发,减少重复开发,提高开发效率,使业务系统的设计更清晰,更易维护,从而快速响应业务需求的变化。
应该理解的是,虽然图2、图4、图5和图6的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2、图4、图5和图6中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图7所示,提供了一种文件解析装置,包括:配置文件查询模块701、第一解析模块702、校验模块703和转换模块704,其中:
配置文件查询模块701,用于获取上传的文件类型,并从缓存中查询与文件类型对应的配置文件,配置文件是预先加载、校验和解析后存储至缓存的;
第一解析模块702,用于获取上传的文件流,根据配置文件对文件流进行解析得到待处理目标;
校验模块703,用于根据配置文件对待处理目标进行校验;
转换模块704,用于根据配置文件将校验完成的待处理目标转换为业务对象。
在其中一个实施例中,上述第一解析模块702包括:
预处理单元,用于获取配置文件中的处理器,并通过处理器对文件流进行预处理;
构建单元,用于根据预处理后的文件流构建元数据对象作为待处理目标。
在其中一个实施例中,上述校验模块703包括:
表头校验单元,用于根据配置文件对表头进行校验;
字段校验单元,用于当表头检验通过时,则对各字段中的数据进行校验。
在其中一个实施例中,上述字段校验单元用于对各字段中的数据进行单字段校验和多字段关联性校验中的至少一个,单字段校验和多字段关联性校验是基于默认校验规则和/或自定义校验规则进行校验的。
在其中一个实施例中,上述文件解析装置还包括:
日志生成模块,用于生成解析记录,并将解析记录存入日志。
在其中一个实施例中,上述配置文件查询模块用于获取上传的文件类型,并基于所述上传的文件类型将上传的文件流存储至环形缓存中;从缓存中查询与所述文件类型对应的配置文件;
上述第一解析模块用于基于承诺模式的异步回调处理方式根据所述配置文件对所述文件流进行解析得到待处理目标。
在其中一个实施例,上述装置还可以包括:
读取单元,用于读取配置文件,并对配置文件进行解析后进行xsd校验;
映射记录单元,用于当校验通过时,读取数据处理器定义,通过反射生成对象实例,并记录处理器名称和对象实例的映射关系;读取文件类型定义,记录文件类型与配置文件的映射关系;
存储单元,用于构造配置文件对应的XLSReader并存入缓存中。
在一个实施例中,如图8所示,提供了一种文件解析装置,包括:文件获取模块801、第二解析模块802和业务对象获取模块803,其中:
文件获取模块801,用于获取上传的文件,对文件进行处理得到文件信息;
第二解析模块802,用于根据文件信息调用根据上述任意一个实施例中的文件解析方法实现的接口,以对上传的文件进行解析;
业务对象获取模块803,用于获取解析后的业务对象。
在其中一个实施例中,上述文件解析装置还包括:
后加工模块,用于对业务对象进行后加工;
存储模块,用于将后加工后的业务对象存入业务表中。
关于文件解析装置的具体限定可以参见上文中对于文件解析方法的限定,在此不再赘述。上述文件解析装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图9所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储配置文件等。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种文件解析方法。
本领域技术人员可以理解,图9中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:获取上传的文件类型,并从缓存中查询与文件类型对应的配置文件,配置文件是预先加载、校验和解析后存储至缓存的;获取上传的文件流,根据配置文件对文件流进行解析得到待处理目标;根据配置文件对待处理目标进行校验;根据配置文件将校验完成的待处理目标转换为业务对象。
在一个实施例中,处理器执行计算机程序时所实现的根据配置文件对文件流进行解析得到待处理目标,包括:获取配置文件中的处理器,并通过处理器对文件流进行预处理;根据预处理后的文件流构建元数据对象作为待处理目标。
在一个实施例中,处理器执行计算机程序时所实现的根据配置文件对待处理目标进行校验,包括:根据配置文件对表头进行校验;当表头检验通过时,则对各字段中的数据进行校验。
在一个实施例中,处理器执行计算机程序时所实现的对各字段中的数据进行校验,包括:对各字段中的数据进行单字段校验和多字段关联性校验中的至少一个,单字段校验和多字段关联性校验是基于默认校验规则和/或自定义校验规则进行校验的。
在一个实施例中,处理器执行计算机程序时所实现的根据配置文件将校验完成的待处理目标转换为业务对象之后,还包括:生成解析记录,并将解析记录存入日志。
在一个实施例中,处理器执行计算机程序时所实现的获取上传的文件类型,查询与所述文件类型对应的配置文件,包括:获取上传的文件类型,并基于上传的文件类型将上传的文件流存储至环形缓存中;从缓存中查询与所述文件类型对应的配置文件;处理器执行计算机程序时所实现的根据所述配置文件对所述文件流进行解析得到待处理目标,包括:基于承诺模式的异步回调处理方式根据配置文件对文件流进行解析得到待处理目标。
在一个实施例中,处理器执行计算机程序时还执行以下步骤:读取配置文件,并对配置文件进行解析后进行xsd校验;当校验通过时,读取数据处理器定义,通过反射生成对象实例,并记录处理器名称和对象实例的映射关系;读取文件类型定义,记录文件类型与配置文件的映射关系;构造配置文件对应的XLSReader并存入缓存中。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:获取上传的文件,对文件进行处理得到文件信息;根据文件信息调用根据上述任意一个实施例中的文件解析方法实现的接口,以对上传的文件进行解析;
获取解析后的业务对象。
在一个实施例中,处理器执行计算机程序时所实现的获取解析后的业务对象,包括:对业务对象进行后加工;将后加工后的业务对象存入业务表中。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:获取上传的文件类型,并从缓存中查询与文件类型对应的配置文件,配置文件是预先加载、校验和解析后存储至缓存的;获取上传的文件流,根据配置文件对文件流进行解析得到待处理目标;根据配置文件对待处理目标进行校验;根据配置文件将校验完成的待处理目标转换为业务对象。
在一个实施例中,计算机程序被处理器执行时所实现的根据配置文件对文件流进行解析得到待处理目标,包括:获取配置文件中的处理器,并通过处理器对文件流进行预处理;根据预处理后的文件流构建元数据对象作为待处理目标。
在一个实施例中,计算机程序被处理器执行时所实现的根据配置文件对待处理目标进行校验,包括:根据配置文件对表头进行校验;当表头检验通过时,则对各字段中的数据进行校验。
在一个实施例中,计算机程序被处理器执行时所实现的对各字段中的数据进行校验,包括:对各字段中的数据进行单字段校验和多字段关联性校验中的至少一个,单字段校验和多字段关联性校验是基于默认校验规则和/或自定义校验规则进行校验的。
在一个实施例中,计算机程序被处理器执行时所实现的根据配置文件将校验完成的待处理目标转换为业务对象之后,还包括:生成解析记录,并将解析记录存入日志。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:获取上传的文件,对文件进行处理得到文件信息;根据文件信息调用根据上述任意一个实施例中的文件解析方法实现的接口,以对上传的文件进行解析;获取解析后的业务对象。
在一个实施例中,计算机程序被处理器执行时所实现的获取解析后的业务对象,包括:对业务对象进行后加工;将后加工后的业务对象存入业务表中。
在一个实施例中,计算机程序被处理器执行时所实现的获取上传的文件类型,查询与所述文件类型对应的配置文件,包括:获取上传的文件类型,并基于上传的文件类型将上传的文件流存储至环形缓存中;从缓存中查询与所述文件类型对应的配置文件;计算机程序被处理器执行时所实现的根据所述配置文件对所述文件流进行解析得到待处理目标,包括:基于承诺模式的异步回调处理方式根据配置文件对文件流进行解析得到待处理目标。
在一个实施例中,计算机程序被处理器执行时还执行以下步骤:读取配置文件,并对配置文件进行解析后进行xsd校验;当校验通过时,读取数据处理器定义,通过反射生成对象实例,并记录处理器名称和对象实例的映射关系;读取文件类型定义,记录文件类型与配置文件的映射关系;构造配置文件对应的XLSReader并存入缓存中。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-Only Memory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (13)
1.一种文件解析方法,其特征在于,所述方法包括:
获取上传的文件类型,并从缓存中查询与所述文件类型对应的配置文件,所述配置文件是预先加载、校验和解析后存储至缓存的;
获取上传的文件流,根据所述配置文件对所述文件流进行解析得到待处理目标;
根据所述配置文件对所述待处理目标进行校验;
根据所述配置文件将校验完成的所述待处理目标转换为业务对象。
2.根据权利要求1所述的方法,其特征在于,所述根据所述配置文件对所述文件流进行解析得到待处理目标,包括:
获取所述配置文件中的处理器,并通过所述处理器对所述文件流进行预处理;
根据预处理后的文件流构建元数据对象作为待处理目标。
3.根据权利要求1所述的方法,其特征在于,所述根据所述配置文件对所述待处理目标进行校验,包括:
根据所述配置文件对表头进行校验;
当所述表头检验通过时,则对各字段中的数据进行校验。
4.根据权利要求3所述的方法,其特征在于,所述对各字段中的数据进行校验,包括:
对各字段中的数据进行单字段校验和多字段关联性校验中的至少一个,所述单字段校验和多字段关联性校验是基于默认校验规则和/或自定义校验规则进行校验的。
5.根据权利要求1至4任意一项所述的方法,其特征在于,所述根据所述配置文件将校验完成的所述待处理目标转换为业务对象之后,还包括:
生成解析记录,并将所述解析记录存入日志。
6.根据权利要求1至4任意一项所述的方法,其特征在于,所述获取上传的文件类型,查询与所述文件类型对应的配置文件,包括:
获取上传的文件类型,并基于所述上传的文件类型将上传的文件流存储至环形缓存中;
从缓存中查询与所述文件类型对应的配置文件;
所述根据所述配置文件对所述文件流进行解析得到待处理目标,包括:
基于承诺模式的异步回调处理方式根据所述配置文件对所述文件流进行解析得到待处理目标。
7.根据权利要求1至4任意一项所述的方法,其特征在于,所述方法还包括:
读取配置文件,并对配置文件进行解析后进行xsd校验;
当校验通过时,读取数据处理器定义,通过反射生成对象实例,并记录处理器名称和对象实例的映射关系;
读取文件类型定义,记录文件类型与配置文件的映射关系;
构造配置文件对应的XLSReader并存入缓存中。
8.一种文件解析方法,其特征在于,所述方法包括:
获取上传的文件,对所述文件进行处理得到文件信息;
根据所述文件信息调用根据权利要求1至7任意一项所述的文件解析方法实现的接口,以对上传的文件进行解析;
获取解析后的业务对象。
9.根据权利要求8所述的方法,其特征在于,所述获取解析后的业务对象之后,包括:
对所述业务对象进行后加工;
将后加工后的业务对象存入业务表中。
10.一种文件解析装置,其特征在于,所述装置包括:
配置文件查询模块,用于获取上传的文件类型,并从缓存中查询与所述文件类型对应的配置文件,所述配置文件是预先加载、校验和解析后存储至缓存的;
第一解析模块,用于获取上传的文件流,根据所述配置文件对所述文件流进行解析得到待处理目标;
校验模块,用于根据所述配置文件对所述待处理目标进行校验;
转换模块,用于根据所述配置文件将校验完成的所述待处理目标转换为业务对象。
11.一种文件解析装置,其特征在于,所述装置包括:
文件获取模块,用于获取上传的文件,对所述文件进行处理得到文件信息;
第二解析模块,用于根据所述文件信息调用根据权利要求1至5任意一项所述的文件解析方法实现的接口,以对上传的文件进行解析;
业务对象获取模块,用于获取解析后的业务对象。
12.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7或8至9中任一项所述的方法的步骤。
13.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7或8至9中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210500704.XA CN114595199B (zh) | 2022-05-10 | 2022-05-10 | 文件解析方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210500704.XA CN114595199B (zh) | 2022-05-10 | 2022-05-10 | 文件解析方法、装置、计算机设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114595199A true CN114595199A (zh) | 2022-06-07 |
CN114595199B CN114595199B (zh) | 2022-09-02 |
Family
ID=81812539
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210500704.XA Active CN114595199B (zh) | 2022-05-10 | 2022-05-10 | 文件解析方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114595199B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115510825A (zh) * | 2022-11-18 | 2022-12-23 | 深圳市徐港电子有限公司 | 一种音频参数配置方法、装置、电子设备及存储介质 |
CN115543940A (zh) * | 2022-11-25 | 2022-12-30 | 卓望数码技术(深圳)有限公司 | 一种基于uri规则配置集成统一处理文件的系统和方法 |
CN118349523A (zh) * | 2024-04-12 | 2024-07-16 | 广州三七极梦网络技术有限公司 | 一种目标文件数据的自动解析方法、装置、设备及介质 |
Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060048097A1 (en) * | 2004-08-25 | 2006-03-02 | Mohit Doshi | System and method for automating the development of web services |
CN102521274A (zh) * | 2011-11-24 | 2012-06-27 | 上海明想电子科技有限公司 | 一种基于ibatis的SQL脚本动态加载方法 |
CN103164907A (zh) * | 2011-12-14 | 2013-06-19 | 航天信息股份有限公司 | 票据解析装置和税控系统 |
CN105095348A (zh) * | 2015-06-09 | 2015-11-25 | 北京织星科技有限公司 | 一种通过xml动态配置网站的方法 |
US20180314518A1 (en) * | 2017-04-28 | 2018-11-01 | Servicenow, Inc. | Systems and methods for tracking configuration file changes |
WO2019071858A1 (zh) * | 2017-10-09 | 2019-04-18 | 武汉斗鱼网络科技有限公司 | 一种更新文件的方法、装置和设备 |
CN110069449A (zh) * | 2019-03-20 | 2019-07-30 | 平安科技(深圳)有限公司 | 文件处理方法、装置、计算机设备和存储介质 |
CN110765741A (zh) * | 2019-09-09 | 2020-02-07 | 重庆金融资产交易所有限责任公司 | 数据处理的方法、装置、计算机设备和存储介质 |
CN110806874A (zh) * | 2018-08-03 | 2020-02-18 | 武汉斗鱼网络科技有限公司 | 一种直播间配置文件的解析方法、存储介质、电子设备及系统 |
WO2020048391A1 (zh) * | 2018-09-04 | 2020-03-12 | 京东数字科技控股有限公司 | 基于多租户技术的web服务的部署、调用方法和装置 |
CN112632006A (zh) * | 2020-12-18 | 2021-04-09 | 平安普惠企业管理有限公司 | 电子报表文件导出方法、装置、设备及存储介质 |
CN113434734A (zh) * | 2021-06-22 | 2021-09-24 | 未鲲(上海)科技服务有限公司 | 一种生成文件、读取文件的方法、装置、设备及存储介质 |
CN113468860A (zh) * | 2021-07-20 | 2021-10-01 | 浪潮软件科技有限公司 | 基于SAX解析Excel文件至多表并提高数据精度的方法 |
CN113505580A (zh) * | 2021-07-26 | 2021-10-15 | 京东科技控股股份有限公司 | 表格文件的解析方法和装置 |
WO2022042252A1 (zh) * | 2020-08-29 | 2022-03-03 | 华为技术有限公司 | 驱动配置管理方法、装置、介质、设备及系统 |
-
2022
- 2022-05-10 CN CN202210500704.XA patent/CN114595199B/zh active Active
Patent Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060048097A1 (en) * | 2004-08-25 | 2006-03-02 | Mohit Doshi | System and method for automating the development of web services |
CN102521274A (zh) * | 2011-11-24 | 2012-06-27 | 上海明想电子科技有限公司 | 一种基于ibatis的SQL脚本动态加载方法 |
CN103164907A (zh) * | 2011-12-14 | 2013-06-19 | 航天信息股份有限公司 | 票据解析装置和税控系统 |
CN105095348A (zh) * | 2015-06-09 | 2015-11-25 | 北京织星科技有限公司 | 一种通过xml动态配置网站的方法 |
US20180314518A1 (en) * | 2017-04-28 | 2018-11-01 | Servicenow, Inc. | Systems and methods for tracking configuration file changes |
WO2019071858A1 (zh) * | 2017-10-09 | 2019-04-18 | 武汉斗鱼网络科技有限公司 | 一种更新文件的方法、装置和设备 |
CN110806874A (zh) * | 2018-08-03 | 2020-02-18 | 武汉斗鱼网络科技有限公司 | 一种直播间配置文件的解析方法、存储介质、电子设备及系统 |
WO2020048391A1 (zh) * | 2018-09-04 | 2020-03-12 | 京东数字科技控股有限公司 | 基于多租户技术的web服务的部署、调用方法和装置 |
CN110069449A (zh) * | 2019-03-20 | 2019-07-30 | 平安科技(深圳)有限公司 | 文件处理方法、装置、计算机设备和存储介质 |
CN110765741A (zh) * | 2019-09-09 | 2020-02-07 | 重庆金融资产交易所有限责任公司 | 数据处理的方法、装置、计算机设备和存储介质 |
WO2022042252A1 (zh) * | 2020-08-29 | 2022-03-03 | 华为技术有限公司 | 驱动配置管理方法、装置、介质、设备及系统 |
CN112632006A (zh) * | 2020-12-18 | 2021-04-09 | 平安普惠企业管理有限公司 | 电子报表文件导出方法、装置、设备及存储介质 |
CN113434734A (zh) * | 2021-06-22 | 2021-09-24 | 未鲲(上海)科技服务有限公司 | 一种生成文件、读取文件的方法、装置、设备及存储介质 |
CN113468860A (zh) * | 2021-07-20 | 2021-10-01 | 浪潮软件科技有限公司 | 基于SAX解析Excel文件至多表并提高数据精度的方法 |
CN113505580A (zh) * | 2021-07-26 | 2021-10-15 | 京东科技控股股份有限公司 | 表格文件的解析方法和装置 |
Non-Patent Citations (2)
Title |
---|
SANTOLUCITO MARK ET AL.: "Probabilistic Automated Language Learning for Configuration Files", 《28TH INTERNATIONAL CONFERENCE ON COMPUTER-AIDED VERIFICATION (CAV)》 * |
王凤连: "一种可配置的协议解析器分析", 《无线互联科技》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115510825A (zh) * | 2022-11-18 | 2022-12-23 | 深圳市徐港电子有限公司 | 一种音频参数配置方法、装置、电子设备及存储介质 |
CN115543940A (zh) * | 2022-11-25 | 2022-12-30 | 卓望数码技术(深圳)有限公司 | 一种基于uri规则配置集成统一处理文件的系统和方法 |
CN118349523A (zh) * | 2024-04-12 | 2024-07-16 | 广州三七极梦网络技术有限公司 | 一种目标文件数据的自动解析方法、装置、设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114595199B (zh) | 2022-09-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114595199B (zh) | 文件解析方法、装置、计算机设备和存储介质 | |
CN102201009B (zh) | 一种表单生成方法和装置 | |
WO2022126983A1 (zh) | 电子报表文件导出方法、装置、设备及存储介质 | |
US20140207826A1 (en) | Generating xml schema from json data | |
CN109684607B (zh) | Json数据解析方法、装置、计算机设备和存储介质 | |
US20050193331A1 (en) | System and method for generating optimized binary representation of an object tree | |
CN107168695B (zh) | 一种excel数据解析方法及系统 | |
CN110908712A (zh) | 移动端跨平台的数据处理方法和设备 | |
US11003835B2 (en) | System and method to convert a webpage built on a legacy framework to a webpage compatible with a target framework | |
CN111400246B (zh) | 异步导入文件方法、装置、计算机设备和存储介质 | |
EP1678629A2 (en) | Extensible framework for handling different mark up language parsers and generators in a computing device | |
CN112187713B (zh) | 报文转换的方法、装置、计算机设备和存储介质 | |
CN111427578B (zh) | 一种数据转换方法、装置及设备 | |
CN115495496A (zh) | 数据导出方法、装置、电子设备、存储介质及程序产品 | |
CN101196812A (zh) | 构件化软件系统实现脚本语言调用多输出参数接口的方法 | |
CN111240772A (zh) | 一种基于区块链的数据处理方法、装置及存储介质 | |
CN105867886B (zh) | 一种写表格的方法及装置 | |
CN107643892B (zh) | 接口处理方法、装置、存储介质和处理器 | |
CN112650600B (zh) | 推送消息内容的方法、装置和计算机设备 | |
CN112015797B (zh) | 一种读取数据的方法及计算机设备 | |
CN110502483B (zh) | 数据处理方法、装置、计算机设备和存储介质 | |
CN114328747A (zh) | 数据同步方法、装置、计算机设备和介质 | |
CN113176877A (zh) | 实体类生成方法、装置及存储介质 | |
CN111400058A (zh) | 调用消息的方法、装置、计算机设备及存储介质 | |
CN106933852B (zh) | 网页更新请求的生成方法、装置及其响应方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |