CN105550011A - 一种自动将程序错误编码转化为错误描述的方法 - Google Patents

一种自动将程序错误编码转化为错误描述的方法 Download PDF

Info

Publication number
CN105550011A
CN105550011A CN201510898069.5A CN201510898069A CN105550011A CN 105550011 A CN105550011 A CN 105550011A CN 201510898069 A CN201510898069 A CN 201510898069A CN 105550011 A CN105550011 A CN 105550011A
Authority
CN
China
Prior art keywords
error
character
coded
description
error coded
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
Application number
CN201510898069.5A
Other languages
English (en)
Inventor
费冬虎
李也白
丁学峰
陆生兵
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
State Grid Corp of China SGCC
Huzhou Power Supply Co of State Grid Zhejiang Electric Power Co Ltd
Changxing Power Supply Co of State Grid Zhejiang Electric Power Co Ltd
Original Assignee
State Grid Corp of China SGCC
Huzhou Power Supply Co of State Grid Zhejiang Electric Power Co Ltd
Changxing Power Supply Co of State Grid Zhejiang Electric Power Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by State Grid Corp of China SGCC, Huzhou Power Supply Co of State Grid Zhejiang Electric Power Co Ltd, Changxing Power Supply Co of State Grid Zhejiang Electric Power Co Ltd filed Critical State Grid Corp of China SGCC
Priority to CN201510898069.5A priority Critical patent/CN105550011A/zh
Publication of CN105550011A publication Critical patent/CN105550011A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/44Encoding

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Machine Translation (AREA)

Abstract

为了实现所述目的,本发明一种自动将程序错误编码转化为错误描述的方法,包括如下步骤:解析错误编码描述文档步骤,从错误编码描述文档获取全部错误编码和错误信息,建立错误编码和错误描述的映射关系;错误编码转换为错误描述的步骤,根据输入的错误编码,查找错误编码所对应的错误描述,并将其输出。通过实施本发明可以取得以下有益技术效果:当错误编码发生变化时,自动将错误编码转换为错误描述,提高工作效率。

Description

一种自动将程序错误编码转化为错误描述的方法
技术领域
本发明涉及电力领域,具体涉及一种自动将程序错误编码转化为错误描述的方法。
背景技术
计算机软件系统通常需要定义错误编码,用于传递软件执行过程中的异常、便于定位出现异常的原因。
为统一对错误编码的理解,错误编码通常用一个整型数据表达,每个错误编码对应一个错误类别。如可以使用ERROR_OK编码表示“成功”。
具体错误编码对应数值和含义,会通过文档给出。特定的编程语言都有其约定的表达错误编码含义的代码文件习惯:如对于C/C++程序,错误编码通过头文件给出。
数值形式的错误编码不容易记忆和理解,为了将错误编码转换为错误描述,常规的程序实现方式是通过if…else…或switch…case…的方式。这种方式在错误编码固定且数量较少的情况下很便于使用,但是当错误编码经常变化或者数量较多时,就需要经常修改将错误编码转换为错误描述的程序代码,工作量大,也容易出错。
发明内容
本发明的目的在于解决现有技术所存在的问题,找到一种自动将程序错误编码转换为错误描述的方法。当错误编码发生变化时,自动将错误编码转换为错误描述。
为了实现所述目的,本发明一种自动将程序错误编码转化为错误描述的方法,其特征在于,包括如下步骤:
解析错误编码描述文档步骤,从错误编码描述文档获取全部错误编码和错误信息,建立错误编码和错误描述的映射关系;
错误编码转换为错误描述的步骤,根据输入的错误编码,查找错误编码所对应的错误描述,并将其输出。
解析错误编码描述文档的步骤包括:
步骤1:读取错误编码描述文件,解析第一行错误编码描述文字,获取错误编码和对应的错误描述,建立该错误编码和错误描述的映射关系,并将其放到内存中;
步骤2:判断是否为最后一行错误编码描述文字,如果是,则解析错误编码描述文档步骤结束,如果否,则解析下一行错误描述文字,获取错误编码和错误描述,建立该错误编码和错误描述的映射关系,将其放到内存中,并重复步骤2。
错误编码转换为错误描述的步骤包括:根据输入的错误编码从内存中查找错误编码,如果查到错误编码,则根据错误编码和错误描述的映射关系返回错误描述,如果没有查到错误编码,则返回“不存在”。
解析一行错误编码描述文字,获取错误编码和对应的错误描述的步骤包括:
步骤A:获取一行错误编码描述文字中的第一个字符,判断该字符是否是英文字符或数字;如果是,则保存该字符,并进入步骤C;如果不是,则删除该字符,并进入步骤B;
步骤B:获取下一个字符,判断该字符是否是英文字符或数字;如果是,则保存该字符,并进入步骤C;如果不是,则删除该字符,重复步骤B;
步骤C:获取下一个字符,判断该字符是否是英文字符或数字;如果是,则保存该字符,并重复步骤C;如果不是,则判断该字符是否是中文字符,如果是中文字符,并进入步骤D,如果不是中文字符,则删除该字符,并重复步骤C;
步骤D:将步骤A到步骤C中保存的字符按保存的先后顺序排列,排列后的字符串作为错误编码;将步骤C中获取的中文字符保存,并进入步骤E;
步骤E:获取下一个字符,判断该字符是否为行结束符,如果不是,则保存该字符,如果是,则将步骤D和步骤E中保存的字符按保存的先后顺序排列,排列后的字符串作为错误描述。
经过以上步骤,可以将错误编码中除数字和英文字母之外的字符删除,提高错误编码的识别率
查找错误编码所对应的错误描述的步骤包括:
步骤a:删除所要查找的错误编码中除数字和英文字符字母外的所有字符;
步骤b:将步骤a中修改后的错误编码与内存中的所有错误编码做比较,如果内存中存在与步骤a中修改后的错误编码完全相同的错误编码,则查到错误编码,如果内存中不存在与步骤a中修改后的错误编码完全相同的错误编码,则没有查到错误编码。
通过实施本发明可以取得以下有益技术效果:当错误编码发生变化时,自动将错误编码转换为错误描述,提高工作效率;防止因为错误编码描述文件中错误编码掺杂空格等有效错误编码,而引起错误描述无法与错误编码对应。
具体实施方式
为了便于本领域技术人员的理解,下面结合具体实施例对本发明作进一步的说明:
一种自动将程序错误编码转化为错误描述的方法,包括解析错误编码描述文档的步骤和错误编码转换为错误描述的步骤。
解析错误编码描述文档的步骤包括:
步骤1:读取错误编码描述文件,解析第一行错误编码描述文字,获取错误编码和对应的错误描述,建立该错误编码和错误描述的映射关系,并将其放到内存中;
步骤2:判断是否为最后一行错误编码描述文字,如果是,则解析错误编码描述文档步骤结束,如果否,则解析下一行错误描述文字,获取错误编码和错误描述,建立该错误编码和错误描述的映射关系,将其放到内存中,并重复步骤2。
步骤1和步骤2中,解析一行错误编码描述文字,获取错误编码和对应的错误描述的步骤包括:
步骤A:获取一行错误编码描述文字中的第一个字符,判断该字符是否是英文字符或数字;如果是,则保存该字符,并进入步骤C;如果不是,则删除该字符,并进入步骤B;
步骤B:获取下一个字符,判断该字符是否是英文字符或数字;如果是,则保存该字符,并进入步骤C;如果不是,则删除该字符,重复步骤B;
步骤C:获取下一个字符,判断该字符是否是英文字符或数字;如果是,则保存该字符,并重复步骤C;如果不是,则判断该字符是否是中文字符,如果是中文字符,并进入步骤D,如果不是中文字符,则删除该字符,并重复步骤C;
步骤D:将步骤A到步骤C中保存的字符按保存的先后顺序排列,排列后形成的字符串作为错误编码;将步骤C中获取的中文字符保存,并进入步骤E;
步骤E:获取下一个字符,判断该字符是否为行结束符,如果不是,则保存该字符,如果是,则将步骤D和步骤E中保存的字符按保存的先后顺序排列,排列后的字符串作为错误描述。
错误编码转换为错误描述的步骤包括:
步骤一:根据输入的错误编码从内存中查找错误编码,如果查到错误编码,则根据错误编码和错误描述的映射关系返回错误描述,如果没有查到错误编码,则返回“不存在”。
步骤一中查找错误编码所对应的错误描述的步骤包括:
步骤a:删除所要查找的错误编码中除数字和英文字符字母外的所有字符;
步骤b:将步骤a中修改后的错误编码与内存中的所有错误编码做比较,如果内存中存在与步骤a中修改后的错误编码完全相同的错误编码,则查到错误编码,如果内存中不存在与步骤a中修改后的错误编码完全相同的错误编码,则没有查到错误编码。
以ERROR_OK表示成功;ERROR_NO表示不成功为例。
错误描述文档,很可能符号不正确,比如讲符号“_”错写成符号“-”,多写了“)”等。假设错误描述文档中
第一行是:-ERROR_OK.成功
第二行是:)ERROR-NO.不成功
采用本发明的方法依然可以正确识别错误编码。
首先,解析该错误编码描述文档:读取错误描述文档,获取一行错误编码描述文字中的第一个字符,即符号“-”,判断字符不是英文字符或数字,则删除“-”;获取下一个字符为“E”,判断该字符是英文字符,则保存字符“E”,同理保存字符“R”“R”“O”“R”,删除字符“_”“.”,当获取字符“成”时,即得出,错误编码是“ERROROK”;同时得出“成功”是错误描述;进而得出第一行中错误编码是“ERROROK”,对应的错误描述是“成功”;同理,第二行的错误编码是“ERRORNO”,的错误描述是“不成功”;
即ERROROK的映射是成功;ERRORNO的映射是不成功;将映射关系保存在内存中。
其次,错误编码转换为错误描述,当出现错误编码ERROR_OK是,删除字母和数字外的所有字符,即简化后的错误编码为“ERROROK”;而内存中ERROROK的映射是成功,即得出ERROR_OK对应的错误描述是成功;同理ERRORNO对应的错误描述是不成功。
本发明可以将错误编码自动转化为错误描述,速度快,容错能力强。
以上所述仅为本发明的具体实施例,但本发明的技术特征并不局限于此,任何本领域的技术人员在本发明的领域内,所作的变化或修饰皆涵盖在本发明的专利范围之中。

Claims (5)

1.一种自动将程序错误编码转化为错误描述的方法,其特征在于,包括如下步骤:
解析错误编码描述文档步骤,从错误编码描述文档获取全部错误编码和错误信息,建立错误编码和错误描述的映射关系;
错误编码转换为错误描述的步骤,根据输入的错误编码,查找错误编码所对应的错误描述,并将其输出。
2.如权利要求1所述的一种自动将程序错误编码转化为错误描述的方法,其特征在于,解析错误编码描述文档的步骤包括:
步骤1:读取错误编码描述文件,解析第一行错误编码描述文字,获取错误编码和对应的错误描述,建立该错误编码和错误描述的映射关系,并将其放到内存中;
步骤2:判断是否为最后一行错误编码描述文字,如果是,则解析错误编码描述文档步骤结束,如果否,则解析下一行错误描述文字,获取错误编码和错误描述,建立该错误编码和错误描述的映射关系,将其放到内存中,并重复步骤2。
3.如权利要求2所述的一种自动将程序错误编码转化为错误描述的方法,其特征在于,错误编码转换为错误描述的步骤包括:根据输入的错误编码从内存中查找错误编码,如果查到错误编码,则根据错误编码和错误描述的映射关系返回错误描述,如果没有查到错误编码,则返回“不存在”。
4.如权利要求2所述的一种自动将程序错误编码转化为错误描述的方法,其特征在于,解析一行错误编码描述文字,获取错误编码和对应的错误描述的步骤包括:
步骤A:获取一行错误编码描述文字中的第一个字符,判断该字符是否是英文字符或数字;如果是,则保存该字符,并进入步骤C;如果不是,则删除该字符,并进入步骤B;
步骤B:获取下一个字符,判断该字符是否是英文字符或数字;如果是,则保存该字符,并进入步骤C;如果不是,则删除该字符,重复步骤B;
步骤C:获取下一个字符,判断该字符是否是英文字符或数字;如果是,则保存该字符,并重复步骤C;如果不是,则判断该字符是否是中文字符,如果是中文字符,并进入步骤D,如果不是中文字符,则删除该字符,并重复步骤C;
步骤D:将步骤A到步骤C中保存的字符按保存的先后顺序排列,排列后的字符串作为错误编码;将步骤C中获取的中文字符保存,并进入步骤E;
步骤E:获取下一个字符,判断该字符是否为行结束符,如果不是,则保存该字符,如果是,则将步骤D和步骤E中保存的字符按保存的先后顺序排列,排列后的字符串作为错误描述。
5.如权利要求4所述的一种自动将程序错误编码转化为错误描述的方法,其特征在于,查找错误编码所对应的错误描述的步骤包括:
步骤a:删除所要查找的错误编码中除数字和英文字符字母外的所有字符;
步骤b:将步骤a中修改后的错误编码与内存中的所有错误编码做比较,如果内存中存在与步骤a中修改后的错误编码完全相同的错误编码,则查到错误编码,如果内存中不存在与步骤a中修改后的错误编码完全相同的错误编码,则没有查到错误编码。
CN201510898069.5A 2015-12-07 2015-12-07 一种自动将程序错误编码转化为错误描述的方法 Pending CN105550011A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510898069.5A CN105550011A (zh) 2015-12-07 2015-12-07 一种自动将程序错误编码转化为错误描述的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510898069.5A CN105550011A (zh) 2015-12-07 2015-12-07 一种自动将程序错误编码转化为错误描述的方法

Publications (1)

Publication Number Publication Date
CN105550011A true CN105550011A (zh) 2016-05-04

Family

ID=55829209

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510898069.5A Pending CN105550011A (zh) 2015-12-07 2015-12-07 一种自动将程序错误编码转化为错误描述的方法

Country Status (1)

Country Link
CN (1) CN105550011A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106851057A (zh) * 2016-11-08 2017-06-13 国网浙江省电力公司湖州供电公司 一种将程序错误编码转化为错误描述的系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1510569A (zh) * 2002-12-23 2004-07-07 华为技术有限公司 一种源代码中硬编码字符串的提取和集中方法
CN1877531A (zh) * 2006-06-30 2006-12-13 浙江大学 一种嵌入式编译体系扫描器的实现方法
US20130074054A1 (en) * 2009-04-16 2013-03-21 The Mathworks, Inc. Method and system for syntax error repair in proframming languages

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1510569A (zh) * 2002-12-23 2004-07-07 华为技术有限公司 一种源代码中硬编码字符串的提取和集中方法
CN1877531A (zh) * 2006-06-30 2006-12-13 浙江大学 一种嵌入式编译体系扫描器的实现方法
US20130074054A1 (en) * 2009-04-16 2013-03-21 The Mathworks, Inc. Method and system for syntax error repair in proframming languages

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
(美)微软公司著;东方人华译: "《Visual Basic.NET语言参考手册》", 30 September 2002, 北京:清华大学出版社 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106851057A (zh) * 2016-11-08 2017-06-13 国网浙江省电力公司湖州供电公司 一种将程序错误编码转化为错误描述的系统
CN106851057B (zh) * 2016-11-08 2023-09-05 国网浙江省电力公司湖州供电公司 一种将程序错误编码转化为错误描述的系统

Similar Documents

Publication Publication Date Title
CN110147536B (zh) 一种基于文件映射的数据处理方法、装置及设备
CN111176996A (zh) 测试用例生成方法、装置、计算机设备及存储介质
CN102867049B (zh) 一种基于单词查找树实现的汉语拼音快速分词方法
CN102141916A (zh) 嵌入式设备及其在osd界面显示语言文字的方法
US7366984B2 (en) Phonetic searching using multiple readings
WO2013137864A1 (en) Submatch extraction
CN111709026A (zh) 静态安全检测方法、装置、计算机设备和存储介质
JP2014197844A (ja) テキストをマトリクスコードシンボルに符号化するためのエンコーダ、およびマトリクスコードシンボルを復号化するためのデコーダ
CN110096481B (zh) 文件编码的识别方法及计算机可读存储介质
CN110069489B (zh) 一种信息处理方法、装置、设备及计算机可读存储介质
US20090055395A1 (en) Method and Apparatus for XML Data Processing
CN114201756A (zh) 一种智能合约代码片段的漏洞检测方法和相关装置
CN105550011A (zh) 一种自动将程序错误编码转化为错误描述的方法
CN111310450B (zh) 一种字符串分词方法、装置、设备及存储介质
CN109446198B (zh) 一种基于双数组的trie树节点压缩方法及装置
CN111338697B (zh) 一种利用hid键盘进行一键设置的装置及方法
US20190205297A1 (en) Index generating apparatus, index generating method, and computer-readable recording medium
CN114461193A (zh) 一种通信协议代码的生成方法、装置、设备及存储介质
CN111222590B (zh) 形近字确定方法、电子设备和计算机可读存储介质
CN114254591A (zh) 一种简繁转换工具的构建方法及装置
CN108595584B (zh) 一种基于数字标记的汉字输出方法和系统
KR100399495B1 (ko) 소스 스트링의 타겟 스트링으로의 변환 방법, 이의 컴퓨터시스템 및 프로그램 제품
CN109002423A (zh) 文本搜索方法及装置
US20140289264A1 (en) One pass submatch extraction
CN117349295B (zh) 字词频度统计方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20160504

RJ01 Rejection of invention patent application after publication