CN112148673A - 一种多二进制合并成一个二进制文件读写错误的解决方法 - Google Patents
一种多二进制合并成一个二进制文件读写错误的解决方法 Download PDFInfo
- Publication number
- CN112148673A CN112148673A CN202011002872.3A CN202011002872A CN112148673A CN 112148673 A CN112148673 A CN 112148673A CN 202011002872 A CN202011002872 A CN 202011002872A CN 112148673 A CN112148673 A CN 112148673A
- Authority
- CN
- China
- Prior art keywords
- binary
- alignment value
- alignment
- content
- running
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 20
- 229910002056 binary alloy Inorganic materials 0.000 title abstract description 7
- 238000012937 correction Methods 0.000 claims abstract description 11
- 230000011218 segmentation Effects 0.000 claims abstract description 11
- 239000003550 marker Substances 0.000 claims description 15
- 238000012545 processing Methods 0.000 claims description 5
- 230000010354 integration Effects 0.000 claims description 4
- 230000009286 beneficial effect Effects 0.000 abstract description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 1
- 230000015654 memory Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
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/11—File system administration, e.g. details of archiving or snapshots
- G06F16/116—Details of conversion of file system types or formats
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)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种多二进制合并成一个二进制文件读写错误的解决方法,包括如下步骤:步骤A:按顺序对二进制文件进行获取,通过获取的顺序对每个二进制文件进行标记,依次标记为A、B、C、D...;步骤B:将所有的二进制文件内容整合,并进行分段标记,分段标记依据二进制文件的获取顺序即A、B、C、D...;步骤C:获取A段二进制内容的有效对其值,并将有效对齐值作为指定对齐值;步骤D:B、C、D...段二进制内容根据指定对齐值进行对齐校正;步骤E:将标记的A、B、C、D...作为运行的顺连关键字;本发明的有益效果是:解决了传统的二进制合并方法因为顺序未进行调整、多个文件的字节未对齐而出现读写数据错误的问题。
Description
技术领域
本发明涉及二进制合并读写领域,具体为一种多二进制合并成一个二进制文件读写错误的解决方法,属于内存技术领域。
背景技术
计算机文件基本上分为二种:二进制文件和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运行之后运行,以此类推。
本发明在使用时,依次获取不同的二进制文件内容,对不同的二进制文件进行标记分段处理,以第一段二进制文件内容的有效对齐值为指定对齐值,对剩下的二进制文件里的内容进行对齐校正,校正完成后生成合并后的二进制文件,在读写运行时,根据分段的顺序依次运行,解决了传统的二进制合并方法,因为顺序未进行调整、多个文件的字节未对齐而出现读写数据错误的问题。
以上公开的本发明优选实施例只是用于帮助阐述本发明。优选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本说明书的内容,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本发明的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本发明。本发明仅受权利要求书及其全部范围和等效物的限制。
Claims (4)
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运行之后运行,以此类推。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011002872.3A CN112148673A (zh) | 2020-09-22 | 2020-09-22 | 一种多二进制合并成一个二进制文件读写错误的解决方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011002872.3A CN112148673A (zh) | 2020-09-22 | 2020-09-22 | 一种多二进制合并成一个二进制文件读写错误的解决方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112148673A true CN112148673A (zh) | 2020-12-29 |
Family
ID=73896175
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011002872.3A Pending CN112148673A (zh) | 2020-09-22 | 2020-09-22 | 一种多二进制合并成一个二进制文件读写错误的解决方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112148673A (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1851701A (zh) * | 2005-11-29 | 2006-10-25 | 华为技术有限公司 | 一种二进制数据的访问方法 |
CN101436190A (zh) * | 2007-11-14 | 2009-05-20 | 英业达股份有限公司 | 同类型数据编列系统及方法 |
CN104063220A (zh) * | 2014-06-25 | 2014-09-24 | 清华大学 | 基于文件的Linux基础软件依赖关系分析方法 |
CN104834508A (zh) * | 2014-02-11 | 2015-08-12 | 沈阳瑞达信邦科技有限公司 | 一种生成用于读写二进制文件代码的方法 |
US20190245906A1 (en) * | 2016-10-11 | 2019-08-08 | Alibaba Group Holding Limited | Methods and devices for encoding and decoding binary data |
CN110795393A (zh) * | 2019-10-31 | 2020-02-14 | 中孚安全技术有限公司 | 一种解析文档二进制格式的方法,系统,设备及可读存储介质 |
CN111090417A (zh) * | 2019-11-14 | 2020-05-01 | 杭州中恒电气股份有限公司 | 二进制文件解析方法、装置、设备及介质 |
-
2020
- 2020-09-22 CN CN202011002872.3A patent/CN112148673A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1851701A (zh) * | 2005-11-29 | 2006-10-25 | 华为技术有限公司 | 一种二进制数据的访问方法 |
CN101436190A (zh) * | 2007-11-14 | 2009-05-20 | 英业达股份有限公司 | 同类型数据编列系统及方法 |
CN104834508A (zh) * | 2014-02-11 | 2015-08-12 | 沈阳瑞达信邦科技有限公司 | 一种生成用于读写二进制文件代码的方法 |
CN104063220A (zh) * | 2014-06-25 | 2014-09-24 | 清华大学 | 基于文件的Linux基础软件依赖关系分析方法 |
US20190245906A1 (en) * | 2016-10-11 | 2019-08-08 | Alibaba Group Holding Limited | Methods and devices for encoding and decoding binary data |
CN110795393A (zh) * | 2019-10-31 | 2020-02-14 | 中孚安全技术有限公司 | 一种解析文档二进制格式的方法,系统,设备及可读存储介质 |
CN111090417A (zh) * | 2019-11-14 | 2020-05-01 | 杭州中恒电气股份有限公司 | 二进制文件解析方法、装置、设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4817095A (en) | Byte write error code method and apparatus | |
CN104113390A (zh) | 一种移动网络数据序列化方法 | |
CN110598187A (zh) | 电缆铭牌批量制作方法 | |
CN103365894B (zh) | 一种字体格式转换方法和装置 | |
CN103997406A (zh) | 基于二维码的身份认证方法和装置 | |
US20160364474A1 (en) | Identifying Data Offsets Using Binary Masks | |
CN112148673A (zh) | 一种多二进制合并成一个二进制文件读写错误的解决方法 | |
CN106528437A (zh) | 数据储存系统与其相关方法 | |
CN105653669A (zh) | 超文本标记语言生成方法及装置 | |
CN102768655B (zh) | 基于java的蒙古文显示方法 | |
CN115712601A (zh) | 一种基于springbatch批量读取定长文件的方法 | |
CN103136166B (zh) | 字体确定方法和设备 | |
CN109388685B (zh) | 将规划行业使用的空间数据进行入库的方法和装置 | |
CN107609068B (zh) | 一种数据无感迁移方法 | |
CN113448782A (zh) | 存储器的测试方法、存储介质和计算机设备 | |
CN111291022A (zh) | 一种基于区块链的数据存储系统 | |
CN111241096A (zh) | 一种excel文档的文本提取方法、系统、终端及存储介质 | |
CN102402689A (zh) | 一种目标字与用户输入图形建立关联的方法及装置 | |
CN103092859B (zh) | 一种获取音乐文件信息的方法及装置 | |
CN112464500B (zh) | 备份cell替换电路验证方法、装置、存储介质和终端 | |
CN112130765B (zh) | Eeprom数据读写方法及装置 | |
US4573138A (en) | Justifying with printer level data stream which accommodates footers and headers | |
US20240055069A1 (en) | Data processing method, data processing structure and memory | |
CN104572595A (zh) | 字库校验装置和字库校验方法 | |
CN113065315B (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20201229 |
|
RJ01 | Rejection of invention patent application after publication |