一种多二进制合并成一个二进制文件读写错误的解决方法与流程

文档序号:23469577发布日期:2020-12-29 13:09阅读:204来源:国知局
一种多二进制合并成一个二进制文件读写错误的解决方法与流程

本发明涉及二进制合并读写领域,具体为一种多二进制合并成一个二进制文件读写错误的解决方法,属于内存技术领域。



背景技术:

计算机文件基本上分为二种:二进制文件和ascii(也称纯文本文件),图形文件及文字处理程序等计算机程序都属于二进制文件,这些文件含有特殊的格式及计算机代码,ascii则是可以用任何文字处理程序阅读的简单文本文件,广义的二进制文件即指文件,由文件在外部设备的存放形式为二进制而得名,狭义的二进制文件即除文本文件以外的文件,文本文件是一种由很多行字符构成的计算机文件,文本文件存在于计算机系统中,通常在文本文件最后一行放置文件结束标志,文本文件的编码基于字符定长,译码相对要容易一些,二进制文件编码是变长的,灵活利用率要高,而译码要难一些,不同的二进制文件译码方式是不同的,所谓的字节对齐,就是各种类型的数据按照一定的规则在空间上排列,而不是顺序的一个接一个的排放,这个就是对齐。

在生产和产测过程中需要把多个二进制文件合并成一个二进制文件,这些文件中有引导程序部分、参数设置部分、程序部分,在二进制合一的过程中常常因为顺序未进行调整、多个文件的字节未对齐而出现读写数据错误的问题。



技术实现要素:

本发明的目的就在于为了解决传统的二进制合并方法,因为顺序未进行调整、多个文件的字节未对齐而出现读写数据错误的问题,因此而提出一种多二进制合并成一个二进制文件读写错误的解决方法。

本发明的目的可以通过以下技术方案实现:一种多二进制合并成一个二进制文件读写错误的解决方法,包括如下步骤:

步骤a:按顺序对二进制文件进行获取,通过获取的顺序对每个二进制文件进行标记,依次标记为a、b、c、d...;

步骤b:将所有的二进制文件内容整合,并进行分段标记,分段标记依据二进制文件的获取顺序即a、b、c、d...;

步骤c:获取a段二进制内容的有效对其值,并将有效对齐值作为指定对齐值;

步骤d:b、c、d...段二进制内容根据指定对齐值进行对齐校正;

步骤e:将标记的a、b、c、d...作为运行的顺连关键字;

步骤f:按照标记顺序,依次调取运行不同的二进制内容。

进一步在于:所述有效对齐值为指定平台上基本类型的长度,对于char型数据,其自身对齐值为1,对于short型为2,对于int,float,double类型,其自身对齐值为4,单位为字节。

进一步在于:所述对齐校正采用填充规则,当成员变量不遵守对齐规则,则需要对其补齐,在其前面填充字节保证该成员对齐,填充的字节数记为pad。

进一步在于:所述二进制文件内容整合的具体处理步骤为:

s01:获取第一个二进制文件内容,附加标记字符a,将其作为第一运行的二进制;

s02:获取第二个二进制文件内容,附加标记字符b,将其作为第二运行的二进制,在s01运行之后运行;

s03:获取第三个二进制文件内容,附加标记字符c,将其作为第三运行的二进制,在s02运行之后运行,以此类推。

与现有技术相比,本发明的有益效果是:

依次获取不同的二进制文件内容,对不同的二进制文件进行标记分段处理,以第一段二进制文件内容的有效对齐值为指定对齐值,对剩下的二进制文件里的内容进行对齐校正,校正完成后生成合并后的二进制文件,在读写运行时,根据分段的顺序依次运行,解决了传统的二进制合并方法,因为顺序未进行调整、多个文件的字节未对齐而出现读写数据错误的问题。

附图说明

为了便于本领域技术人员理解,下面结合附图对本发明作进一步的说明。

图1为本发明流程图。

具体实施方式

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

请参阅图1所示,一种多二进制合并成一个二进制文件读写错误的解决方法,包括如下步骤:

步骤a:按顺序对二进制文件进行获取,通过获取的顺序对每个二进制文件进行标记,依次标记为a、b、c、d...;

步骤b:将所有的二进制文件内容整合,并进行分段标记,分段标记依据二进制文件的获取顺序即a、b、c、d...;

步骤c:获取a段二进制内容的有效对其值,并将有效对齐值作为指定对齐值;

步骤d:b、c、d...段二进制内容根据指定对齐值进行对齐校正;

步骤e:将标记的a、b、c、d...作为运行的顺连关键字;

步骤f:按照标记顺序,依次调取运行不同的二进制内容;

有效对齐值为指定平台上基本类型的长度,对于char型数据,其自身对齐值为1,对于short型为2,对于int,float,double类型,其自身对齐值为4,单位为字节;对齐校正采用填充规则,当成员变量不遵守对齐规则,则需要对其补齐,在其前面填充字节保证该成员对齐,填充的字节数记为pad;二进制文件内容整合的具体处理步骤为:

s01:获取第一个二进制文件内容,附加标记字符a,将其作为第一运行的二进制;

s02:获取第二个二进制文件内容,附加标记字符b,将其作为第二运行的二进制,在s01运行之后运行;

s03:获取第三个二进制文件内容,附加标记字符c,将其作为第三运行的二进制,在s02运行之后运行,以此类推。

本发明在使用时,依次获取不同的二进制文件内容,对不同的二进制文件进行标记分段处理,以第一段二进制文件内容的有效对齐值为指定对齐值,对剩下的二进制文件里的内容进行对齐校正,校正完成后生成合并后的二进制文件,在读写运行时,根据分段的顺序依次运行,解决了传统的二进制合并方法,因为顺序未进行调整、多个文件的字节未对齐而出现读写数据错误的问题。

以上公开的本发明优选实施例只是用于帮助阐述本发明。优选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本说明书的内容,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本发明的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本发明。本发明仅受权利要求书及其全部范围和等效物的限制。



技术特征:

1.一种多二进制合并成一个二进制文件读写错误的解决方法,其特征在于,包括如下步骤:

步骤a:按顺序对二进制文件进行获取,通过获取的顺序对每个二进制文件进行标记,依次标记为a、b、c、d...;

步骤b:将所有的二进制文件内容整合,并进行分段标记,分段标记依据二进制文件的获取顺序即a、b、c、d...;

步骤c:获取a段二进制内容的有效对其值,并将有效对齐值作为指定对齐值;

步骤d:b、c、d...段二进制内容根据指定对齐值进行对齐校正;

步骤e:将标记的a、b、c、d...作为运行的顺连关键字;

步骤f:按照标记顺序,依次调取运行不同的二进制内容。

2.根据权利要求1所述的一种多二进制合并成一个二进制文件读写错误的解决方法,其特征在于,所述有效对齐值为指定平台上基本类型的长度,对于char型数据,其自身对齐值为1,对于short型为2,对于int,float,double类型,其自身对齐值为4,单位为字节。

3.根据权利要求1所述的一种多二进制合并成一个二进制文件读写错误的解决方法,其特征在于,所述对齐校正采用填充规则,当成员变量不遵守对齐规则,则需要对其补齐,在其前面填充字节保证该成员对齐,填充的字节数记为pad。

4.根据权利要求1所述的一种多二进制合并成一个二进制文件读写错误的解决方法,其特征在于,所述二进制文件内容整合的具体处理步骤为:

s01:获取第一个二进制文件内容,附加标记字符a,将其作为第一运行的二进制;

s02:获取第二个二进制文件内容,附加标记字符b,将其作为第二运行的二进制,在s01运行之后运行;

s03:获取第三个二进制文件内容,附加标记字符c,将其作为第三运行的二进制,在s02运行之后运行,以此类推。


技术总结
本发明公开了一种多二进制合并成一个二进制文件读写错误的解决方法,包括如下步骤:步骤A:按顺序对二进制文件进行获取,通过获取的顺序对每个二进制文件进行标记,依次标记为A、B、C、D...;步骤B:将所有的二进制文件内容整合,并进行分段标记,分段标记依据二进制文件的获取顺序即A、B、C、D...;步骤C:获取A段二进制内容的有效对其值,并将有效对齐值作为指定对齐值;步骤D:B、C、D...段二进制内容根据指定对齐值进行对齐校正;步骤E:将标记的A、B、C、D...作为运行的顺连关键字;本发明的有益效果是:解决了传统的二进制合并方法因为顺序未进行调整、多个文件的字节未对齐而出现读写数据错误的问题。

技术研发人员:林胜利;吴桂林;翟芳
受保护的技术使用者:北京中房智宝科技有限公司
技术研发日:2020.09.22
技术公布日:2020.12.29
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1