CN112232028A - 录波通道数据的处理方法、装置、终端设备及存储介质 - Google Patents
录波通道数据的处理方法、装置、终端设备及存储介质 Download PDFInfo
- Publication number
- CN112232028A CN112232028A CN202011172289.7A CN202011172289A CN112232028A CN 112232028 A CN112232028 A CN 112232028A CN 202011172289 A CN202011172289 A CN 202011172289A CN 112232028 A CN112232028 A CN 112232028A
- Authority
- CN
- China
- Prior art keywords
- data point
- data
- channel
- length
- character string
- 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
- 238000003672 processing method Methods 0.000 title claims abstract description 18
- 238000000605 extraction Methods 0.000 claims abstract description 17
- 238000000034 method Methods 0.000 claims abstract description 14
- 238000004590 computer program Methods 0.000 claims description 19
- 238000012545 processing Methods 0.000 claims description 18
- 230000001502 supplementing effect Effects 0.000 claims description 12
- 238000005457 optimization Methods 0.000 claims description 7
- 108010001267 Protein Subunits Proteins 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000010845 search algorithm Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/126—Character encoding
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种录波通道数据的处理方法、装置、终端设备及存储介质,所述方法通过对ASCII存储格式的dat文件的所有通道的数据点的字符串的长度进行更新,使得每个通道内部的每个点的字符串的长度都相同,在不修改现有Comtrade格式数据结构且不修改每个数据点的实际值和精度的情况下,即能实现每个通道的每个数据点的占用字节数一致,比之现有的ASCII存储格式,优化ASCII存储格式后的dat文件的通道数据点的排列更加整齐和规律,能实现用规律性的字符串查找方法快速精确找到任意一个通道任意一个数据点,进而实现了对单独通道的快速提取,为通道数据的快速提取提供技术支持。
Description
技术领域
本发明涉及电力电子技术领域,尤其涉及一种录波通道数据的处理方法、装置、终端设备及存储介质。
背景技术
电力录波是用于记录电力系统故障或稳态情况下,触发时刻前后各个电气量变化全过程的数据,国际通用格式为Comtrade格式。Comtrade格式规定了每一套录波需保存为同名的cfg和dat文件,其中cfg用于保存录波所有通道的数量、名称、类型、长度、校正系数等信息,dat文件则保存时间通道和所有录波通道的录波数据值。
录波文件里一般含有上百个通道,一方面,在进行分析时一般不会使用全部通道,而是使用10%左右的最常用通道,另一方面每个通道数据点数有几千甚至上百万个数据点,因此如果读取录波时载入全部录波通道的数据,则花费时间会很多,并且占用大量内存,甚至导致内存不足(常见完整一套柔性直流电力录波文件本身占100M,100个通道,完整载入需要10秒,占用内存约500M)。
因此,录波分析软件在载入录波时,应只载入录波的配置cfg文件而不载入全部数据,待用户选择了某个通道后再单独载入dat文件中该录波通道的数据,从而加快录波载入速度,降低内存占用,提高用户体验。现有Comtrade格式规定了三种dat的存储方式:Binary16、Binary32以及ASCII。
对于Binary16和Binary32格式(统称二进制格式)的dat文件,参见图1,图1是Binary16和Binary32格式下的通道数据的排列方式,其中,由于其每个通道每个点占用字节数一致,可以很容易计算出某个通道每个点的位置,从而支持单独载入某通道数据,但是二进制格式显示不直观,无法使用记事本或Excel灵活查看和修改数据,不便于进一步的分析。
而ASCII格式的dat文件很直观,本质是一个长字符串,里面含有换行符、逗号及数据值(负号、小数点、0~9),参见图2,图2是ASCII格式的通道数据的排列方式,可以看到,通道上的每个数据点(多个字符组成的字符串)的位置和长度没有规律,在单独提取某通道时,必须先搜索所有换行符,分割出每一行,然后搜索此行的所有逗号,分割出每一列,才可以定位到某通道的某一个点。然而在对逗号(或者换行符)进行搜索时,必须从dat文件的第一个字符开始判断,若为逗号,则记录存储,若不为逗号则继续找下一个字符继续判断,由此,整个过程需要对大量的字符判断,过程非常漫长。现有的技术虽然提供了其他搜索算法可以加速这个过程,但是本质上避免不了对大量字符的判断,大量的判断是十分耗时的。
发明内容
本发明实施例的目的是提供一种录波通道数据的处理方法,解决现有技术中ASCII存储格式的dat文件中每个通道数据点的位置和长度没有规律,导致无法快速提取通道数据点的问题。
为实现上述目的,本发明实施例提供了一种录波通道数据的处理方法,包括以下步骤:
步骤S1:获取待处理的录波dat文件,其中,所述dat文件采用ASCII的存储格式,所述dat文件存储有多个通道,所述通道包括时间通道和录波通道;
步骤S2:遍历录波dat文件当前通道的所有数据点,得到数据点中的字符串的最长长度;
步骤S3:更新所述通道的每个数据点的字符串长度,具体包括步骤S30-S35:
步骤S30:若所述数据点的字符串长度等于所述通道的最长长度,则不更新所述数据点的字符串长度,进入步骤S31,否则进入步骤S32;
步骤S31:对下一个数据点的字符串的长度进行更新,返回步骤S30;
步骤S32:若所述数据点的字符串长度小于所述通道的最长长度,则进入步骤S33;
步骤S33:若所述数据点的字符串含有小数点,则在所述数据点字符串补充N个字符'0',使得所述数据点字符串的长度达到最长长度,并返回步骤S31,否则在所述数据点的字符串后补充小数点,进入步骤S34;
步骤S34:若所述数据点的字符串的长度达到最长长度,则在所述数据点字符串补充1个字符'0',并将所述数据点的字符串的长度设置为当前通道的最长长度,返回第一个数据点,执行步骤S30;
步骤S35:重复步骤S30-S34,直至所述通道的所有数据点的字符串的长度相同;
步骤S4:重复步骤S2和S3,依次对dat文件的每一通道的所有数据点的字符串的长度进行更新;
步骤S5:基于处理后的dat文件,获取待提取的通道数据点。
进一步,所述基于处理后的dat文件,获取待提取的通道数据点包括:
获取dat文件的录波通道数NumCol、通道的数据点数NumRow以及dat文件任意一行字符串的长度LenLine;
读取dat文件的任一行数据,查找所述行数据的每一逗号在所述行数据中的位置以及换行符在所述行数据中的位置,将每一所述逗号在所述行数据中的位置以及换行符在所述行数据中的位置依次存入数组Array,所述位置从所述行数据的第一个字符的位置开始计算,开始位置为1,最大位置为LenLine;
根据所述数组Array、所述一行字符串的长度LenLine、待提取的数据点所在的行数以及所属的通道,获取所述待提取的数据点的起始位置start和待提取的数据点的字符串的长度LenPoint;
根据所述待提取的数据点的字符串的起始位置start和所述待提取的数据点的字符串的长度len,获取所述待提取的数据点。
进一步的,所述根据所述数组Array、所述一行字符串的长度LenLine、待提取的数据点所在的行数以及所属的通道,获取所述待提取的数据点的起始位置start和待提取的数据点的字符串的长度LenPoint,具体包括:
若所述待提取的数据点为时间通道上的数据点,则所述待提取的数据点的字符串的起始位置start按照下面的公式获取:
start=LenLine·(i-1)+1,1≤i≤NumRow
其中,i代表时间通道的第i个数据点;
且,所述待提取的数据点的字符串的长度LenPoint具体为:
LenPoint=Array[0]-1;
当所述待提取的数据点为录波通道上的数据点,则所述待提取的数据点的字符串的起始位置start按下式获取:
start=LenLine·(i-1)+Array[j-1]+1,1≤i≤NumRow,1≤j≤NumCol;
其中,i代表行数,j代表第j个录波通道;
且,所述待提取的数据点的字符串的长度LenPoint按照下式获取:
LenPoint=Array[j]-Array[j-1]-1,1≤j≤NumCol。
进一步的,根据所述待提取的数据点的字符串的起始位置start和所述待提取的数据点的字符串的长度LenPoint,获取所述待提取的数据点,具体包括:
根据所述待提取的数据点的字符串的起始位置start和所述待提取的数据点的字符串的长度LenPoint,采用字符串截取公式获得待提取的数据点。
本发明实施例还提供了一种录波通道数据的处理装置,包括格式优化模块和提取模块,其中,
格式优化模块,用于对dat文件的通道数据点进行格式优化,具体包括以下步骤:
步骤S1:获取待处理的录波dat文件,其中,所述dat文件采用ASCII的存储格式,所述dat文件存储有多个通道,所述通道包括时间通道和录波通道;
步骤S2:遍历录波dat文件当前通道的所有数据点,得到数据点中的字符串的最长长度;
步骤S3:更新所述通道的每个数据点的字符串长度,具体包括步骤S30-S35:
步骤S30:若所述数据点的字符串长度等于所述通道的最长长度,则不更新所述数据点的字符串长度,进入步骤S31,否则进入步骤S32;
步骤S31:对下一个数据点的字符串的长度进行更新,返回步骤S30;
步骤S32:若所述数据点的字符串长度小于所述通道的最长长度,则进入步骤S33;
步骤S33:若所述数据点的字符串含有小数点,则在所述数据点字符串补充N个字符'0',使得所述数据点字符串的长度达到最长长度,并返回步骤S31,否则在所述数据点的字符串后补充小数点,进入步骤S34;
步骤S34:若所述数据点的字符串的长度达到最长长度,则在所述数据点字符串补充1个字符'0',并将所述数据点的字符串的长度设置为当前通道的最长长度,返回第一个数据点,执行步骤S30;
步骤S35:重复步骤S30-S34,直至所述通道的所有数据点的字符串的长度相同;
步骤S4:重复步骤S2和S3,依次对dat文件的每一通道的所有数据点的字符串的长度进行更新;
所述提取模块,用于基于处理后的dat文件,获取待提取的通道数据点。
进一步的,所述提取模块,包括文件参数获取单元、数组获取单元、数据点参数获取单元以及数据点提取单元,其中,
所述文件参数获取单元,用于获取dat文件的录波通道数NumCol、通道的数据点数NumRow以及dat文件任意一行字符串的长度LenLine;
所述数组获取单元,用于读取dat文件的任一行数据,查找所述行数据的每一逗号在所述行数据中的位置以及换行符在所述行数据中的位置,将每一所述逗号在所述行数据中的位置以及换行符在所述行数据中的位置依次存入数组Array,所述位置从所述行数据的第一个字符的位置开始计算,开始位置为1,最大位置为LenLine;
所述数据点参数获取单元,用于根据所述数组Array、所述一行字符串的长度LenLine、待提取的数据点所在的行数以及所属的通道,获取所述待提取的数据点的起始位置start和待提取的数据点的字符串的长度LenPoint;
所述数据点提取单元,用于根据所述待提取的数据点的字符串的起始位置start和所述待提取的数据点的字符串的长度LenPoint,获取所述待提取的数据点。
进一步的,所述数据点参数获取单元,包括时间通道数据点参数获取子单元和录波通道数据点参数获取子单元,其中,
所述时间通道数据点参数获取子单元,用于按照下式获取待提取的时间通道数据点的字符串的起始位置start:
start=LenLine·(i-1)+1,1≤i≤NumRow,
其中,i代表时间通道的第i个数据点;
且,按照下式获取所述待提取的时间通道数据点的字符串的长度LenPoint:
LenPoint=Array[0]-1;
所述录波通道数据点参数获取子单元,用于按照下式获取待提取的录波通道数据点的字符串的起始位置start:
start=LenLine·(i-1)+Array[j-1]+1,1≤i≤NumRow,1≤j≤NumCol,
其中,i代表行数,j代表第j个录波通道;
且,按照下式获取所述待提取的录波通道数据点的字符串的长度LenPoint:
LenPoint=Array[j]-Array[j-1]-1,1≤j≤NumCol。
进一步的,所述数据点提取单元,具体用于:
根据所述待提取的数据点的字符串的起始位置start和所述待提取的数据点的字符串的长度LenPoint,采用字符串截取公式获得待提取的数据点。
作为本发明的优选实施例,本发明还提供了一种终端设备,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现上述发明实施例所述的录波通道数据的处理方法。
本发明另一实施例提供了一种存储介质,所述计算机可读存储介质包括存储的计算机程序,其中,在所述计算机程序运行时控制所述计算机可读存储介质所在终端设备执行上述发明实施例所述的录波通道数据的处理方法。
与现有技术相比,具有如下有益效果:
本发明实施例提供的录波通道数据的处理方法、装置、终端设备及存储介质,通过对ASCII存储格式的dat文件的所有通道的数据点的字符串的长度进行更新,使得每个通道内部的每个点的字符串的长度都相同,在不修改现有Comtrade格式数据结构且不修改每个数据点的实际值和精度的情况下,即能实现每个通道的每个数据点的占用字节数一致。比之现有技术,本发明的dat文件的通道数据点的排列更加整齐和规律,不需判断即可精准读取指定数据点所在的位置和长度,直接提取字符串,因而极大地提升了速度,进而实现了对单独通道的快速提取,为通道数据的快速提取提供技术支持。
附图说明
图1是现有技术中dat的存储方式为Binary16、Binary32格式的通道数据的排列方式示意图;
图2是现有技术中dat的存储方式为ASCII格式的通道数据的排列方式示意图;
图3是本发明提供的优化ASCII存储格式前的dat文件的通道数据的排列方式示意图;
图4是本发明提供的优化ASCII存储格式后的dat文件的通道数据的排列方式示意图;
图5是本发明提供的录波通道数据的处理方法的一个实施例的流程图;
图6是本发明提供的录波通道数据的处理方法一个实施例中的步骤S3的详细流程图;
图7是本发明提供的录波录波通道数据的处理装置一个实施例的结构示意图;
图8是本发明提供的录波录波通道数据的处理装置一个实施例中的提取模块的详细结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参见图5,图5是本发明提供的录波通道数据的处理方法的一个实施例的流程示意图;本发明实施例提供一种录波通道数据的处理方法,包括步骤S1-S5:
步骤S1:获取待处理的录波dat文件,其中,所述dat文件采用ASCII的存储格式,所述dat文件存储有多个通道,所述通道包括时间通道和录波通道;
步骤S2:遍历录波dat文件当前通道的所有数据点,得到数据点中的字符串的最长长度;
步骤S3:更新所述通道的每个数据点的字符串长度,具体包括步骤S30-S35:
步骤S30:若所述数据点的字符串长度等于所述通道的最长长度,则不更新所述数据点的字符串长度,进入步骤S31,否则进入步骤S32;
步骤S31:对下一个数据点的字符串的长度进行更新,返回步骤S30;
步骤S32:若所述数据点的字符串长度小于所述通道的最长长度,则进入步骤S33;
步骤S33:若所述数据点的字符串含有小数点,则在所述数据点字符串补充N个字符'0',使得所述数据点字符串的长度达到最长长度,并返回步骤S31,否则在所述数据点的字符串后补充小数点,进入步骤S34;
步骤S34:若所述数据点的字符串的长度达到最长长度,则在所述数据点字符串补充1个字符'0',并将所述数据点的字符串的长度设置为当前通道的最长长度,返回第一个数据点,执行步骤S30;
步骤S35:重复步骤S30-S34,直至所述通道的所有数据点的字符串的长度相同;
步骤S4:重复步骤S2和S3,依次对dat文件的每一通道的所有数据点的字符串的长度进行更新;
步骤S5:基于处理后的dat文件,获取待提取的通道数据点。
参见图3,是优化ASCII存储格式前的dat文件的通道数据的排列方式示意图,可以理解的是,图3中的第1列代表时间通道上的数据点,有n个数据点,分别为0、2、2.3,...,图2中的第2列代表第1个录波通道上的n个数据点,分别为11、20、30...,以此类推,3.5、4、5.5,...代表第2录波通道上的n个数据点,由此,采用ASCII格式的dat的存储方式的通道数据点的排列不整齐,且每个数据点的位置和长度没有规律,在单独提取某通道时,必须先搜索所有换行符,分割出每一行,然后搜索此行的所有逗号,分割出每一列,才可以定位到某通道的某一个点,整个过程非常漫长,不利于快速提取通道数据点。
由此,本发明实施例提供了上述通道数据处理方法,通过对ASCII存储格式的dat文件的所有通道的数据点的字符串的长度进行更新,得到优化ASCII存储格式前的dat文件。参见图4,图4是优化ASCII存储格式后的dat文件的通道数据的排列方式示意图,可以看到,每个通道内部的每个点的字符串的长度都相同,从而每个通道的数据点的位置和字符串的长度均有规律可循,不需对每个字符进行判断,即能用规律性的字符串查找方式提取通道的数据点,从而为通道数据的快速提取提供技术支持。
在本发明实施例中,所述步骤S5中,所述基于处理后的dat文件,获取待提取的通道数据点,具体包括:
S51、获取dat文件的录波通道数NumCol、通道的数据点数NumRow以及dat文件任意一行字符串的长度LenLine。
需要说明的是,所述录波通道数NumCol根据Comtrade格式录波的cfg配置文件获取,在配置cfg文件中包含了站名、通道的总数量、每个通道的相关信息等;而数据dat文件则包含了时间标记、被逗号分隔直至带有特征字符的模拟通道个数相对应的模拟通道数据值等。为此,在本方面的实施例中,根据cfg文件获取出通道实际点数,也就是dat文件行数NumRow,根据cfg文件获取录波通道数NumCol,根据dat文件获得一行字符串的长度LenLine(含换行符)。可以理解的是,在图4中,所述录波通道数NumCol=3,所述任意一行字符串的长度LenLine=16。
S52、读取dat文件的任一行数据,查找所述行数据的每一逗号在所述行数据中的位置以及换行符在所述行数据中的位置,将每一所述逗号在所述行数据中的位置以及换行符在所述行数据中的位置依次存入数组Array,所述位置从所述行数据的第一个字符的位置开始计算,开始位置为1,最大位置为LenLine。
优选地,在本发明实施例中,取第一行数据查找到逗号所在位置,记录成NumCol个元素的数组,补足换行符所在位置,形成NumCol+1个元素的数组Array。示例性的,参见图4,图4是经过格式优化后的dat文件的通道数据的排列示意图,可以理解的是,所述行数据的每一逗号在第一行的位置分别为4,7,11,换行符在第一行中的位置为16,由此,数组Array=[4,7,11,16]。
S53、根据所述数组Array、所述一行字符串的长度LenLine、待提取的数据点所在的行数以及所属的通道,获取所述待提取的数据点的起始位置start和待提取的数据点的字符串的长度LenPoint。
优选的,所述步骤S53进一步包括:
若所述待提取的数据点为时间通道上的数据点,则所述待提取的数据点的字符串的起始位置start按照下面的公式获取:
start=LenLine·(i-1)+1,1≤i≤NumRow,
其中,i代表时间通道的第i个数据点;
且,所述待提取的数据点的字符串的长度LenPoint具体为:
LenPoint=Array[0]-1;
若所述待提取的数据点为录波通道上的数据点,则所述待提取的数据点的字符串的起始位置start按下式获取:
start=LenLine·(i-1)+Array[j-1]+1,1≤i≤NumRow,1≤j≤NumCol;
其中,i代表行数,j代表第j个录波通道;
且,所述待提取的数据点的字符串的长度LenPoint按照下式获取:
LenPoint=Array[j]-Array[j-1]-1,1≤j≤NumCol。
S54、根据所述待提取的数据点的字符串的起始位置start和所述待提取的数据点的字符串的长度LenPoint,获取所述待提取的数据点。
作为步骤S54的一个具体实施方式,所述根据所述待提取的数据点的字符串的起始位置start和所述待提取的数据点的字符串的长度LenPoint,获取所述待提取的数据点,具体包括:
根据所述待提取的数据点的字符串的起始位置start和所述待提取的数据点的字符串的长度LenPoint,采用字符串截取公式获取待提取的数据点。
在本实施例中,基于优化后的ASCII存储格式的dat文件,其中,dat文件中每个通道内部每个点字符串长度是一致的,每行字符串长度也是一致的,由此,每个通道数据点的位置和字符串的长度均有规律可循,进而提出了一种快速提取通道数据点的处理方法,比之现有的提取通道数据方法相比,本发明提取通道数据只需获取一行dat文件数据的逗号的位置和换行符的位置,然后根据通道数据点的排列方式采取规律性的字符串查找方式精准提取任意一个通道上的任意一个数据点,进而实现对单独通道的快速提取。
综上所述,本发明实施例提供的录波通道数据的处理方法,通过对ASCII存储格式的dat文件的所有通道的数据点的字符串的长度进行更新,使得每个通道内部的每个点的字符串的长度都相同,在不修改现有Comtrade格式数据结构且不修改每个数据点的实际值和精度的情况下,即能实现每个通道的每个数据点的占用字节数一致,比之现有的ASCII存储格式,优化ASCII存储格式后的dat文件的通道数据点的排列更加整齐和规律,能实现用规律性的字符串查找方法快速精确找到任意一个通道任意一个数据点,进而实现了对单独通道的快速提取,为通道数据的快速提取提供技术支持。
作为本发明提供的优选实施例,请参见图7,图7是本发明提供的录波通道数据的处理装置的一个实施例的结构示意图,包括格式优化模块1和提取模块2,其中,
所述格式优化模块1,用于对dat文件的通道数据点进行格式优化,具体包括以下步骤:
步骤S1:获取待处理的录波dat文件,其中,所述dat文件采用ASCII的存储格式,所述dat文件存储有多个通道,所述通道包括时间通道和录波通道;
步骤S2:遍历录波dat文件当前通道的所有数据点,得到数据点中的字符串的最长长度;
步骤S3:更新所述通道的每个数据点的字符串长度,具体包括步骤S30-S35:
步骤S30:若所述数据点的字符串长度等于所述通道的最长长度,则不更新所述数据点的字符串长度,进入步骤S31,否则进入步骤S32;
步骤S31:对下一个数据点的字符串的长度进行更新,返回步骤S30;
步骤S32:若所述数据点的字符串长度小于所述通道的最长长度,则进入步骤S33;
步骤S33:若所述数据点的字符串含有小数点,则在所述数据点字符串补充N个字符'0',使得所述数据点字符串的长度达到最长长度,并返回步骤S31,否则在所述数据点的字符串后补充小数点,进入步骤S34;
步骤S34:若所述数据点的字符串的长度达到最长长度,则在所述数据点字符串补充1个字符'0',并将所述数据点的字符串的长度设置为当前通道的最长长度,返回第一个数据点,执行步骤S30;
步骤S35:重复步骤S30-S34,直至所述通道的所有数据点的字符串的长度相同;
步骤S4:重复步骤S2和S3,依次对dat文件的每一通道的所有数据点的字符串的长度进行更新;
所述提取模块2,用于基于处理后的dat文件,获取待提取的通道数据点。
进一步的,参见图8,所述提取模块2,包括文件参数获取单元201、数组获取单元202、数据点参数获取单元203以及数据点提取单元204,其中,
所述文件参数获取单元201,用于获取dat文件的录波通道数NumCol、通道的数据点数NumRow以及dat文件任意一行字符串的长度LenLine;
所述数组获取单元202,用于读取dat文件的任一行数据,查找所述行数据的每一逗号在所述行数据中的位置以及换行符在所述行数据中的位置,将每一所述逗号在所述行数据中的位置以及换行符在所述行数据中的位置依次存入数组Array,所述位置从所述行数据的第一个字符的位置开始计算,开始位置为1,最大位置为LenLine;
所述数据点参数获取单元203,用于根据所述数组Array、所述一行字符串的长度LenLine、待提取的数据点所在的行数以及所属的通道,获取所述待提取的数据点的起始位置start和待提取的数据点的字符串的长度LenPoint;
所述数据点提取单元204,用于根据所述待提取的数据点的字符串的起始位置start和所述待提取的数据点的字符串的长度LenPoint,获取所述待提取的数据点。
进一步的,所述数据点参数获取单元203,包括时间通道数据点参数获取子单元和录波通道数据点参数获取子单元,其中,
所述时间通道数据点参数获取子单元,用于按照下式获取待提取的时间通道数据点的字符串的起始位置start:
start=LenLine·(i-1)+1,1≤i≤NumRow,
其中,i代表时间通道的第i个数据点;
且,按照下式获取所述待提取的数据点的时间通道字符串的长度LenPoint:
LenPoint=Array[0]-1;
所述录波通道数据点参数获取子单元,用于按照下式获取待提取的录波通道数据点的字符串的起始位置start:
start=LenLine·(i-1)+Array[j-1]+1,1≤i≤NumRow,1≤j≤NumCol,
其中,i代表行数,j代表第j个录波通道;
且,按照下式获取所述待提取的录波通道数据点的字符串的长度LenPoint:
LenPoint=Array[j]-Array[j-1]-1,1≤j≤NumCol。
进一步的,所述数据点提取单元,具体用于:
根据所述待提取的数据点的字符串的起始位置start和所述待提取的数据点的字符串的长度LenPoint,采用字符串截取公式获得待提取的数据点。
作为本发明的优选实施例,本发明还提供了一种终端设备,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现上述发明实施例的S1-S5步骤。
本发明另一实施例提供了一种存储介质,所述计算机可读存储介质包括存储的计算机程序,其中,在所述计算机程序运行时控制所述计算机可读存储介质所在终端设备执行上述发明实施例的S1-S5步骤。
所称处理器可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,所述处理器是所述图片的变色处理终端设备的控制中心,利用各种接口和线路连接整个图片的变色处理终端设备的各个部分。
所述存储器可用于存储所述计算机程序和/或模块,所述处理器通过运行或执行存储在所述存储器内的计算机程序和/或模块,以及调用存储在存储器内的数据,实现所述图片的变色处理终端设备的各种功能。所述存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
其中,所述图片的变色处理终端设备集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。
需说明的是,以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。另外,本发明提供的装置实施例附图中,模块之间的连接关系表示它们之间具有通信连接,具体可以实现为一条或多条通信总线或信号线。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。
Claims (10)
1.一种录波通道数据的处理方法,其特征在于,包括以下步骤:
步骤S1:获取待处理的录波dat文件,其中,所述dat文件采用ASCII的存储格式,所述dat文件存储有多个通道,所述通道包括时间通道和录波通道;
步骤S2:遍历录波dat文件当前通道的所有数据点,得到数据点中的字符串的最长长度;
步骤S3:更新所述通道的每个数据点的字符串长度,具体包括步骤S30-S35:
步骤S30:若所述数据点的字符串长度等于所述通道的最长长度,则不更新所述数据点的字符串长度,进入步骤S31,否则进入步骤S32;
步骤S31:对下一个数据点的字符串的长度进行更新,返回步骤S30;
步骤S32:若所述数据点的字符串长度小于所述通道的最长长度,则进入步骤S33;
步骤S33:若所述数据点的字符串含有小数点,则在所述数据点字符串补充N个字符'0',使得所述数据点字符串的长度达到最长长度,并返回步骤S31,否则在所述数据点的字符串后补充小数点,进入步骤S34;
步骤S34:若所述数据点的字符串的长度达到最长长度,则在所述数据点字符串补充1个字符'0',并将所述数据点的字符串的长度设置为当前通道的最长长度,返回第一个数据点,执行步骤S30;
步骤S35:重复步骤S30-S34,直至所述通道的所有数据点的字符串的长度相同;
步骤S4:重复步骤S2和S3,依次对dat文件的每一通道的所有数据点的字符串的长度进行更新;
步骤S5:基于处理后的dat文件,获取待提取的通道数据点。
2.如权利要求1的一种录波通道数据的处理方法,其特征在于,所述基于处理后的dat文件,获取待提取的通道数据点,具体包括:
获取dat文件的录波通道数NumCol、通道的数据点数NumRow以及dat文件任意一行字符串的长度LenLine;
读取dat文件的任一行数据,查找所述行数据的每一逗号在所述行数据中的位置以及换行符在所述行数据中的位置,将每一所述逗号在所述行数据中的位置以及换行符在所述行数据中的位置依次存入数组Array,其中,所述位置从所述行数据的第一个字符的位置开始计算,开始位置为1,最大位置为LenLine;
根据所述数组Array、所述一行字符串的长度LenLine、待提取的数据点所在的行数以及所属的通道,获取所述待提取的数据点的起始位置start和待提取的数据点的字符串的长度LenPoint;
根据所述待提取的数据点的字符串的起始位置start和所述待提取的数据点的字符串的长度LenPoint,获取所述待提取的数据点。
3.如权利要求2所述的录波通道数据的处理方法,其特征在于,所述根据所述数组Array、所述一行字符串的长度LenLine、待提取的数据点所在的行数以及所属的通道,获取所述待提取的数据点的起始位置start和待提取的数据点的字符串的长度LenPoint,具体包括:
若所述待提取的数据点为时间通道上的数据点,则所述待提取的数据点的字符串的起始位置start按照下面的公式获取:
start=LenLine·(i-1)+1,1≤i≤NumRow
其中,i代表时间通道的第i个数据点;
且,所述待提取的数据点的字符串的长度LenPoint具体为:
LenPoint=Array[0]-1;
若所述待提取的数据点为录波通道上的数据点,则所述待提取的数据点的字符串的起始位置start按下式获取:
start=LenLine·(i-1)+Array[j-1]+1,1≤i≤NumRow,1≤j≤NumCol;
其中,i代表行数,j代表第j个录波通道;
且,所述待提取的数据点的字符串的长度LenPoint按照下式获取:
LenPoint=Array[j]-Array[j-1]-1,1≤j≤NumCol。
4.如权利要求2所述的录波通道数据的处理方法,其特征在于,所述根据所述待提取的数据点的字符串的起始位置start和所述待提取的数据点的字符串的长度LenPoint,获取所述待提取的数据点,具体包括:
根据所述待提取的数据点的字符串的起始位置start和所述待提取的数据点的字符串的长度LenPoint,采用字符串截取公式获得待提取的数据点。
5.一种录波通道数据的处理装置,其特征在于,包括:
格式优化模块,用于对dat文件的通道数据点进行格式优化,具体包括以下步骤:
步骤S1:获取待处理的录波dat文件,其中,所述dat文件采用ASCII的存储格式,所述dat文件存储有多个通道,所述通道包括时间通道和录波通道;
步骤S2:遍历录波dat文件当前通道的所有数据点,得到数据点中的字符串的最长长度;
步骤S3:更新所述通道的每个数据点的字符串长度,具体包括步骤S30-S35:
步骤S30:若所述数据点的字符串长度等于所述通道的最长长度,则不更新所述数据点的字符串长度,进入步骤S31,否则进入步骤S32;
步骤S31:对下一个数据点的字符串的长度进行更新,返回步骤S30;
步骤S32:若所述数据点的字符串长度小于所述通道的最长长度,则进入步骤S33;
步骤S33:若所述数据点的字符串含有小数点,则在所述数据点字符串补充N个字符'0',使得所述数据点字符串的长度达到最长长度,并返回步骤S31,否则在所述数据点的字符串后补充小数点,进入步骤S34;
步骤S34:若所述数据点的字符串的长度达到最长长度,则在所述数据点字符串补充1个字符'0',并将所述数据点的字符串的长度设置为当前通道的最长长度,返回第一个数据点,执行步骤S30;
步骤S35:重复步骤S30-S34,直至所述通道的所有数据点的字符串的长度相同;
步骤S4:重复步骤S2和S3,依次对dat文件的每一通道的所有数据点的字符串的长度进行更新;
提取模块,用于基于处理后的dat文件,获取待提取的通道数据点。
6.如权利要求5所述的录波通道数据的处理装置,其特征在于,所述提取模块,包括文件参数获取单元、数组获取单元、数据点参数获取单元以及数据点提取单元,其中,
所述文件参数获取单元,用于获取dat文件的录波通道数NumCol、通道的数据点数NumRow以及dat文件任意一行字符串的长度LenLine;
所述数组获取单元,用于读取dat文件的任一行数据,查找所述行数据的每一逗号在所述行数据中的位置以及换行符在所述行数据中的位置,将每一所述逗号在所述行数据中的位置以及换行符在所述行数据中的位置依次存入数组Array,所述位置从所述行数据的第一个字符的位置开始计算,开始位置为1,最大位置为LenLine;
所述数据点参数获取单元,用于根据所述数组Array、所述一行字符串的长度LenLine、待提取的数据点所在的行数以及所属的通道,获取所述待提取的数据点的起始位置start和待提取的数据点的字符串的长度LenPoint;
所述数据点提取单元,用于根据所述待提取的数据点的字符串的起始位置start和所述待提取的数据点的字符串的长度LenPoint,获取所述待提取的数据点。
7.如权利要求6所述录波通道数据的处理装置,其特征在于,所述数据点参数获取单元,包括时间通道数据点参数获取子单元和录波通道数据点参数获取子单元,其中,
所述时间通道数据点参数获取子单元,用于按照下式获取待提取的时间通道数据点的字符串的起始位置start:
start=LenLine·(i-1)+1,1≤i≤NumRow,
其中,i代表时间通道的第i个数据点;
且,按照下式获取所述待提取的间通道数据点的字符串的长度LenPoint:
LenPoint=Array[0]-1;
所述录波通道数据点参数获取子单元,用于按照下式获取待提取的录波通道数据点的字符串的起始位置start:
start=LenLine·(i-1)+Array[j-1]+1,1≤i≤NumRow,1≤j≤NumCol,
其中,i代表行数,j代表第j个录波通道;
且,按照下式获取所述待提取的录波通道数据点的字符串的长度LenPoint:
LenPoint=Array[j]-Array[j-1]-1,1≤j≤NumCol。
8.如权利要求7所述录波通道数据的处理装置,其特征在于,所述所述数据点提取单元,具体用于:
根据所述待提取的数据点的字符串的起始位置start和所述待提取的数据点的字符串的长度LenPoint,采用字符串截取公式获得待提取的数据点。
9.一种终端设备,其特征在于,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至4中任意一项所述的录波通道数据的处理方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括存储的计算机程序,其中,在所述计算机程序运行时控制所述计算机可读存储介质所在终端设备执行如权利要求1至4中任意一项所述的录波通道数据的处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011172289.7A CN112232028B (zh) | 2020-10-28 | 2020-10-28 | 录波通道数据的处理方法、装置、终端设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011172289.7A CN112232028B (zh) | 2020-10-28 | 2020-10-28 | 录波通道数据的处理方法、装置、终端设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112232028A true CN112232028A (zh) | 2021-01-15 |
CN112232028B CN112232028B (zh) | 2023-01-03 |
Family
ID=74110244
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011172289.7A Active CN112232028B (zh) | 2020-10-28 | 2020-10-28 | 录波通道数据的处理方法、装置、终端设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112232028B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2620887A1 (en) * | 2012-01-25 | 2013-07-31 | Cryptic Software Limited | Method and device for electronic data auditing |
CN104657627A (zh) * | 2013-11-18 | 2015-05-27 | 广州中国科学院软件应用技术研究所 | Fastq格式读段开头的寻找和判断方法以及系统 |
US20160335294A1 (en) * | 2015-05-15 | 2016-11-17 | Bjorn J. Gruenwald | System and Method for Organizing Data |
CN108334609A (zh) * | 2018-02-02 | 2018-07-27 | 广东蜂助手网络技术股份有限公司 | Oracle中实现JSON格式数据存取的方法、装置、设备及存储介质 |
CN110674199A (zh) * | 2019-08-13 | 2020-01-10 | 中国电建集团贵阳勘测设计研究院有限公司 | 将csv格式数据转换为SEG-2格式数据的方法及装置 |
-
2020
- 2020-10-28 CN CN202011172289.7A patent/CN112232028B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2620887A1 (en) * | 2012-01-25 | 2013-07-31 | Cryptic Software Limited | Method and device for electronic data auditing |
CN104657627A (zh) * | 2013-11-18 | 2015-05-27 | 广州中国科学院软件应用技术研究所 | Fastq格式读段开头的寻找和判断方法以及系统 |
US20160335294A1 (en) * | 2015-05-15 | 2016-11-17 | Bjorn J. Gruenwald | System and Method for Organizing Data |
CN108334609A (zh) * | 2018-02-02 | 2018-07-27 | 广东蜂助手网络技术股份有限公司 | Oracle中实现JSON格式数据存取的方法、装置、设备及存储介质 |
CN110674199A (zh) * | 2019-08-13 | 2020-01-10 | 中国电建集团贵阳勘测设计研究院有限公司 | 将csv格式数据转换为SEG-2格式数据的方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN112232028B (zh) | 2023-01-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110399420B (zh) | 一种可配置化Excel格式的导出方法、电子设备和介质 | |
CN107807982B (zh) | 一种异构数据库的一致性校验方法及装置 | |
CN108536745B (zh) | 基于Shell的数据表提取方法、终端、设备及存储介质 | |
CN108334609B (zh) | Oracle中实现JSON格式数据存取的方法、装置、设备及存储介质 | |
CN110032562B (zh) | 一种存储业务记录的方法及装置 | |
KR101882759B1 (ko) | 안정된 바이너리 식별 방법 및 장치 | |
CN111651397B (zh) | 一种访问PXIe外设模块的方法和设备 | |
CN107103035A (zh) | 本地表数据更新方法及装置 | |
CN113407254B (zh) | 表单生成方法、装置、电子设备及存储介质 | |
CN112232028B (zh) | 录波通道数据的处理方法、装置、终端设备及存储介质 | |
CN111488483B (zh) | 曲库更新方法、装置、终端和非临时性计算机可读存储介质 | |
CN117235069A (zh) | 索引创建方法、数据查询方法、装置、设备及存储介质 | |
CN113419957B (zh) | 基于规则的大数据离线批处理性能容量扫描方法及装置 | |
CN114385868B (zh) | 一种正则表达式生成方法、装置、介质及设备 | |
CN110222286A (zh) | 信息获取方法、装置、终端和计算机可读存储介质 | |
CN101727204A (zh) | 一种通信终端上的文字输入系统、方法及通信终端 | |
CN101221581B (zh) | 一种数据文件生成方法及装置 | |
CN110716747B (zh) | 基于函数参数统计的程序运行效率优化方法及终端设备 | |
CN113779932A (zh) | 数字格式化方法、装置、终端设备及存储介质 | |
CN112508526A (zh) | 数据的稽核方法和装置 | |
CN107436918B (zh) | 数据库实现方法、装置和设备 | |
CN111736858A (zh) | 一种终端设备的升级方法、存储介质及终端设备 | |
CN113127408A (zh) | 数据转换方法及装置 | |
CN113918095B (zh) | 数据的混合交叉存储方法、装置及电子设备 | |
CN109710254B (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 |