CN104461548A - 代码片段的添加方法和装置 - Google Patents

代码片段的添加方法和装置 Download PDF

Info

Publication number
CN104461548A
CN104461548A CN201410779458.1A CN201410779458A CN104461548A CN 104461548 A CN104461548 A CN 104461548A CN 201410779458 A CN201410779458 A CN 201410779458A CN 104461548 A CN104461548 A CN 104461548A
Authority
CN
China
Prior art keywords
code
file
added
code file
class
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
Application number
CN201410779458.1A
Other languages
English (en)
Other versions
CN104461548B (zh
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.)
Beijing Gridsum Technology Co Ltd
Original Assignee
Beijing Gridsum Technology 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 Beijing Gridsum Technology Co Ltd filed Critical Beijing Gridsum Technology Co Ltd
Priority to CN201410779458.1A priority Critical patent/CN104461548B/zh
Publication of CN104461548A publication Critical patent/CN104461548A/zh
Application granted granted Critical
Publication of CN104461548B publication Critical patent/CN104461548B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

本发明公开了一种代码片段的添加方法和装置。该代码片段的添加方法采用确定多个待添加代码文件;将多个待添加代码文件添加到目标文件夹中;遍历目标文件夹中的待添加代码文件,将多个待添加代码文件依次转化为标记类代码文件,得到多个标记类代码文件;在待应用类文件中应用多个标记类代码文件中的一个或多个标记类代码文件,其中,待应用类文件为标记类代码文件应用的文件;根据应用的标记类代码文件将多个待添加代码文件中的一个或多个待添加代码文件添加到待应用类文件中。通过本发明,解决了现有技术为代码片段添加标记类文件效率低的问题。

Description

代码片段的添加方法和装置
技术领域
本发明涉及数据处理领域,具体而言,涉及一种代码片段的添加方法和装置。
背景技术
随着计算机技术的快速发展,软件编程工具Visual Studio提供了代码片段CodeSnippet的功能,解决了需要重复输入相同代码片段的问题,从而提高了开发效率。CodeSnippet的本质就是可扩展标记语言(eXtensible Markup Language,简称为XML)文件,在XML文件中包含一段可重用的代码片段,该代码片段中大部分代码每次输入的内容是相同的,只有小部分是不同的。如果手动输入整个代码片段,会存在比如烦、易出错、效率低下等问题。因此,对于需要重复输入代码的场景,使用CodeSnippet可以实现将代码片段中不同的部分提取为参数,使用占位符替换,由用户输入这些参数。当用户输入代码片段后将参数所在位置替换为用户输入,用户不需要输入重复代码,只需要插入特定的CodeSnippet输入参数。CodeSnippet添加代码比较方便,但是对代码的修改比较繁琐,重复的内容需要进行多处修改。现有技术通过定义标记类Attribute,将代码片段中的参数部分提取为标记类Attribute的属性,在待应用的类上应用该标记类Attribute,并为该标记类Attribute的属性赋值就可以实现代码片段的自动生成,同时使得在修改代码片段时只需要修改一处。但是,现有技术对每个CodeSnippet都需要手动添加一个Attribute定义,这样将会降低编程效率。
针对现有技术为代码片段添加标记类文件效率低的问题,目前尚未提出有效的解决方案。
发明内容
本发明的主要目的在于提供一种代码片段的添加方法和装置,以解决现有技术为代码片段添加标记类文件效率低的问题。
为了实现上述目的,根据本发明的一个方面,提供了一种代码片段的添加方法。
该代码片段的添加方法包括:确定多个待添加代码文件;将多个待添加代码文件添加到目标文件夹中;遍历目标文件夹中的待添加代码文件,将多个待添加代码文件依次转化为标记类代码文件,得到多个标记类代码文件;在待应用类文件中应用多个标记类代码文件中的一个或多个标记类代码文件,其中,待应用类文件为标记类代码文件应用的文件;根据应用的标记类代码文件将多个待添加代码文件中的一个或多个待添加代码文件添加到待应用类文件中。
进一步地,遍历目标文件夹中的待添加代码文件,将多个待添加代码文件依次转化为标记类代码文件,得到多个标记类代码文件包括:获取目标文件夹中的多个待添加代码文件;分别为多个待添加代码文件生成以预设字符串开头的多个标记类代码文件;将以预设字符串开头的多个标记类代码文件添加到目标文件夹中。
进一步地,待添加代码文件中包括参数列表和代码段,其中,参数列表是用户输入参数的列表,参数列表中的参数可以替换代码段中占位符之间的字符串,其中,分别为多个待添加代码文件生成以预设字符串开头的多个标记类代码文件包括:分别获取以预设字符串开头的多个标记类代码文件中标记类代码文件的属性值,其中,属性值为待添加代码文件的参数列表中的参数;分别获取以预设字符串开头的多个标记类代码文件中标记类代码文件的代码段,其中,分别获取以预设字符串开头的多个标记类代码文件中标记类代码文件包括:获取标记类代码文件中的代码段获取函数;通过调用代码段获取函数从待添加代码文件中获取待添加代码文件的代码段。
进一步地,根据应用的标记类代码文件将多个待添加代码文件中的一个或多个待添加代码文件添加到待应用类文件中包括:获取应用标记类文件的待应用类文件;从待应用类文件中筛选出以预设字符串开头的多个标记类代码文件;获取以预设字符串开头的多个标记类代码文件中标记类代码文件的属性值;获取以预设字符串开头的多个标记类代码文件中标记类代码文件的代码段;分别将以预设字符串开头的多个标记类代码文件中标记类代码文件的代码段中占位符之间的字符串用以预设字符串开头的多个标记类代码文件中标记类代码文件的属性值替换。
进一步地,获取应用标记类文件的待应用类文件包括:获取目标文件夹中的所有子文件夹;遍历目标文件夹中的所有子文件夹,分别获取每个子文件夹中的代码文件;将代码文件添加到预设集合中;从预设集合中筛选出应用以预设字符串开头的多个标记类代码文件中标记类代码文件的待应用类文件。
为了实现上述目的,根据本发明的另一方面,提供了一种代码片段的添加装置。
该代码片段的添加装置包括:确定模块,用于确定多个待添加代码文件;第一添加模块,用于将多个待添加代码文件添加到目标文件夹中;转化模块,用于遍历目标文件夹中的待添加代码文件,将多个待添加代码文件依次转化为标记类代码文件,得到多个标记类代码文件;应用模块,用于在待应用类文件中应用多个标记类代码文件中的一个或多个标记类代码文件,其中,待应用类文件为标记类代码文件应用的文件;第二添加模块,用于根据应用的标记类代码文件将多个待添加代码文件中的一个或多个待添加代码文件添加到待应用类文件中。
进一步地,转化模块包括:获取模块,用于获取目标文件夹中的多个待添加代码文件;生成模块,用于分别为多个待添加代码文件生成以预设字符串开头的多个标记类代码文件;第一添加子模块,用于将以预设字符串开头的多个标记类代码文件添加到目标文件夹中。
进一步地,待添加代码文件中包括参数列表和代码段,其中,参数列表是用户输入参数的列表,参数列表中的参数可以替换代码段中占位符之间的字符串,其中,生成模块包括:第一获取子模块,用于分别获取以预设字符串开头的多个标记类代码文件中标记类代码文件的属性值,其中,属性值为待添加代码文件的参数列表中的参数;第二获取子模块,用于分别获取以预设字符串开头的多个标记类代码文件中标记类代码文件的代码段,其中,分第二获取子模块包括:第三获取子模块,用于获取标记类代码文件中的代码段获取函数;第二添加子模块,用于通过调用代码段获取函数从待添加代码文件中获取待添加代码文件的代码段。
进一步地,第二添加模块包括:第四获取子模块,用于获取应用标记类文件的待应用类文件;第一筛选模块,用于从待应用类文件中筛选出以预设字符串开头的多个标记类代码文件;第五获取子模块,用于获取以预设字符串开头的多个标记类代码文件中标记类代码文件的属性值;第六获取子模块,用于获取以预设字符串开头的多个标记类代码文件中标记类代码文件的代码段;替换模块,用于分别将以预设字符串开头的多个标记类代码文件中标记类代码文件的代码段中占位符之间的字符串用以预设字符串开头的多个标记类代码文件中标记类代码文件的属性值替换。
进一步地,第四获取子模块包括:第七获取子模块,用于获取目标文件夹中的所有子文件夹;第八获取子模块,用于遍历目标文件夹中的所有子文件夹,分别获取每个子文件夹中的代码文件;第三添加子模块,用于将代码文件添加到预设集合中;第二筛选模块,用于从预设集合中筛选出应用以预设字符串开头的多个标记类代码文件中标记类代码文件的待应用类文件。
通过本发明,采用确定多个待添加代码文件;将多个待添加代码文件添加到目标文件夹中;遍历目标文件夹中的待添加代码文件,将多个待添加代码文件依次转化为标记类代码文件,得到多个标记类代码文件;在待应用类文件中应用多个标记类代码文件中的一个或多个标记类代码文件,其中,待应用类文件为标记类代码文件应用的文件;根据应用的标记类代码文件将多个待添加代码文件中的一个或多个待添加代码文件添加到待应用类文件中,解决了现有技术为代码片段添加标记类文件效率低的问题。该发明利用代码片段CodeSnippet解决了代码重用的问题,同时,该发明为每个代码文件生成标记类文件,通过应用该标记类文件,根据标记类文件实现将代码片段自动添加到待应用类文件,而且,该发明通过对标记类文件的属性进行修改可以有效地解决了代码片段CodeSnippet修改繁琐的问题,进而达到了提高编程效率的效果。
附图说明
构成本申请的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的代码片段的添加方法的流程图;以及
图2是根据本发明实施例的代码片段的添加装置的示意图。
具体实施方式
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本发明。
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
本发明旨在提供一种代码片段的添加方法和装置。
图1是根据本发明实施例的代码片段的添加方法的流程图。如图1所示,该代码片段的添加方法包括如下的步骤S101至步骤S105:
步骤S101,确定多个待添加代码文件。
该实施例中的待添加代码文件优选为代码片段CodeSnippet,利用代码片段CodeSnippet可以有效地解决代码重用的问题。待添加代码文件可以是一个,也可以是多个。待添加代码文件实质是可扩展标记语言(eXtensible Markup Language,简称为XML)文件,待添加代码文件中包括参数列表和代码段,其中,参数列表是用户输入参数的列表,参数需要用户手动输入,如下代码所示:
参数列表中的参数可以替换代码段中占位符之间的字符串,其中,$$之间的内容是占位符,如下所示:
步骤S102,将多个待添加代码文件添加到目标文件夹中。
在确定多个待添加代码文件之后,将一个或者多个待添加代码文件添加到目标文件中,该实施例的代码片段的添加方法中的目标文件优选为软件编程过程中的工程文件。到确定的待添加代码文件只有一个时,只需要将一个待添加代码文件添加到目标文件,即工程文件中,当确定的待添加代码文件有多个时,需要分别将确定的多个待添加代码文件添加到目标文件,即工程文件中。
步骤S103,遍历目标文件夹中的待添加代码文件,将多个待添加代码文件依次转化为标记类代码文件,得到多个标记类代码文件。
优选地,该实施例的代码片段的添加方法中遍历目标文件夹中的待添加代码文件,将多个待添加代码文件依次转化为标记类代码文件,得到多个标记类代码文件包括:获取目标文件夹中的多个待添加代码文件;分别为多个待添加代码文件生成以预设字符串开头的多个标记类代码文件;将以预设字符串开头的多个标记类代码文件添加到目标文件夹中。
具体地,分别为多个待添加代码文件生成以预设字符串开头的多个标记类代码文件可以包括:分别获取以预设字符串开头的多个标记类代码文件中标记类代码文件的属性值,其中,属性值为待添加代码文件的参数列表中的参数;分别获取以预设字符串开头的多个标记类代码文件中标记类代码文件的代码段,其中,分别获取以预设字符串开头的多个标记类代码文件中标记类代码文件包括:获取标记类代码文件中的代码段获取函数;通过调用代码段获取函数从待添加代码文件中获取待添加代码文件的代码段。
该实施例的代码片段的添加方法在目标文件中添加扩展样式转换表语言(Extenxible Stylesheet Language Transformations,简称为XSLT),其中XSLT用于将XML文件转化为任意形式的文件。该实施例中应用XSLT主要是将代码片段CodeSnippet转化为标记类文件Attribute。在添加XSLT文件之后,应用T4模板遍历目标文件夹中的待添加代码文件,即代码片段CodeSnippet,为每个代码文件应用XSLT生成标记类文件Attribute。具体地,应用T4模板遍历目标文件夹中的待添加代码文件,为每个代码文件应用XSLT生成标记类文件Attribute可以包括:获取T4模板所在的工程,即T4模板所在模板转换引擎的宿主。由于T4模板不能独立运行,需要寄宿在某个进程中,其中,T4模板寄宿的进程为宿主,宿主优选为Visual Studio,也可以是开发的可执行程序。在获取T4模板所在的宿主之后,利用宿主获取数据终端设备(DateTerminal Equipment,简称为DTE),即获取Visual Studio的对象,使用该Visual Studio的对象可以访问宿主的其他功能。DTE提供了解决方案属性Solution,使用该解决方案属性Solution中的查找工程文件FindProjectItem方法即可以获取T4模板所在的工程;获取工程下所有的代码文件。遍历工程下的所有项目,递归遍历每个项目的子项目,将所有项目添加到集合中,从集合中筛选出以CodeSnippet为后缀的文件,即代码文件;为每个代码文件生成以预设字符串开头的标记类文件。优选地,预设字符串为Snippt,加载XSLT文件和代码文件,利用XSLT执行代码文件的转化,并将转化后的内容保存在内存中,待多有的代码文件执行完转化后,将内存中的内容输出到标记类文件中,实现了代码文件添加到工程文件中,并将代码文件转化为标记类文件,保存在工程文件中。其中,代码文件CodeSnippt中所有的参数由标记类文件Attribute中的属性表示,同时标记类文件Attribute中包含代码段获取函数GetSnippet,利用该方法可以获取代码文件CodeSnippt中包含的代码段。
步骤S104,在待应用类文件中应用多个标记类代码文件中的一个或多个标记类代码文件。
该实施例的代码片段的添加方法中的待应用类文件为标记类代码文件应用的文件。在待应用类文件中应用多个标记类代码文件中的一个或多个标记类代码文件,目的是为了在待应用类文件中输入一个或者多个待添加代码文件,应用多个标记类代码文件中的一个或多个标记类代码文件既解决了代码重用的问题,同时有解决了代码重用带来的修改不方便的问题。
步骤S105,根据应用的标记类代码文件将多个待添加代码文件中的一个或多个待添加代码文件添加到待应用类文件中。
优选地,该实施例的代码片段的添加方法中根据应用的标记类代码文件将多个待添加代码文件中的一个或多个待添加代码文件添加到待应用类文件中可以包括:获取应用标记类文件的待应用类文件;从待应用类文件中筛选出以预设字符串开头的多个标记类代码文件;获取以预设字符串开头的多个标记类代码文件中标记类代码文件的属性值;获取以预设字符串开头的多个标记类代码文件中标记类代码文件的代码段;分别将以预设字符串开头的多个标记类代码文件中标记类代码文件的代码段中占位符之间的字符串用以预设字符串开头的多个标记类代码文件中标记类代码文件的属性值替换。
获取应用标记类文件的待应用类文件包括:获取目标文件夹中的所有子文件夹;遍历目标文件夹中的所有子文件夹,分别获取每个子文件夹中的代码文件;将代码文件添加到预设集合中;从预设集合中筛选出应用以预设字符串开头的多个标记类代码文件中标记类代码文件的待应用类文件。
具体地,获取应用标记类文件的待应用类文件包括:获取目标文件夹中的所有子文件夹;遍历目标文件夹中的所有子文件夹,分别获取每个子文件夹中的代码文件;将代码文件添加到预设集合中;从预设集合中筛选出应用以预设字符串开头的多个标记类代码文件中标记类代码文件的待应用类文件。
在待应用类文件中可以应用一个标记类文件,也可以应用多个标记类文件。使用T4模板遍历工程文件中所有应用上述标记类文件的类文件,循环遍历工程文件下的所有工程文件,对于每个工程文件,循环遍历当前工程文件的代码文件。其中,每个工程文件对应一个源文件,每个源文件可以包含多个代码文件,比如一个源文件中可以同时定义两个类,即包含两个类文件。递归遍历每个代码文件,将所有代码文件都添加到集合中,从集合中筛选出所有应用标记类文件的以Snippt开头的类文件。根据标记类文件Attribute为待应用类文件生成代码具体包括:获取这个待应用类文件应用的所有标记类文件,筛选出以Snippt开头的标记类文件,获取每个标记类文件的属性值,利用标记类文件中定义的获取代码段函数GetSnippet获取代码文件中的代码段,将代码段中的占位符之间的内容用标记类文件Attribute的各个属性值替换。该实施例的代码片段的添加方法可以自动地为代码文件生成标记类文件,不需要手动添加,提高了编码效率,降低了手动添加造成的失误率。
该实施例的代码片段的添加方法采用确定多个待添加代码文件;将多个待添加代码文件添加到目标文件夹中;遍历目标文件夹中的待添加代码文件,将多个待添加代码文件依次转化为标记类代码文件,得到多个标记类代码文件;在待应用类文件中应用多个标记类代码文件中的一个或多个标记类代码文件,其中,待应用类文件为标记类代码文件应用的文件;根据应用的标记类代码文件将多个待添加代码文件中的一个或多个待添加代码文件添加到待应用类文件中,解决了现有技术为代码片段添加标记类文件效率低的问题,进而达到了提高编程效率的效果。
从以上的描述中,可以看出,本发明实施例的代码片段的添加方法通过采用将每个待添加代码文件分别转化为标记类代码文件,在待应用类文件中应用标记类代码文件中,根据应用的标记类代码文件将待添加代码文件添加到待应用类文件中,解决了现有技术为代码片段添加标记类文件效率低的问题。该发明的实施例利用代码片段CodeSnippet有效地解决了代码重用的问题,同时,为每个代码文件生成标记类文件,通过对标记类文件的属性进行修改可以有效地解决了代码片段CodeSnippet修改繁琐的问题,进而达到了提高编程效率的效果。
需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本发明实施例还提供了一种代码片段的添加装置。需要说明的是,该代码片段的添加装置可以用于执行本发明实施例的代码片段的添加方法。
图2是根据本发明实施例的代码片段的添加装置的示意图。如图2所示,该代码片段的添加装置包括:确定模块10,第一添加模块20,转化模块30,应用模块40和第二添加模块50。
确定模块10,用于确定多个待添加代码文件,其中,待添加代码文件中包括参数列表和代码段,其中,参数列表是用户输入参数的列表,参数列表中的参数可以替换代码段中占位符之间的字符串。
第一添加模块20,用于将多个待添加代码文件添加到目标文件夹中。
转化模块30,用于遍历目标文件夹中的待添加代码文件,将多个待添加代码文件依次转化为标记类代码文件,得到多个标记类代码文件。
优选地,转化模块30包括:获取模块,用于获取目标文件夹中的多个待添加代码文件;生成模块,用于分别为多个待添加代码文件生成以预设字符串开头的多个标记类代码文件;第一添加子模块,用于将以预设字符串开头的多个标记类代码文件添加到目标文件夹中。
具体地,生成模块包括:第一获取子模块,用于分别获取以预设字符串开头的多个标记类代码文件中标记类代码文件的属性值,其中,属性值为待添加代码文件的参数列表中的参数;第二获取子模块,用于分别获取以预设字符串开头的多个标记类代码文件中标记类代码文件的代码段,其中,分第二获取子模块包括:第三获取子模块,用于获取标记类代码文件中的代码段获取函数;第二添加子模块,用于通过调用代码段获取函数从待添加代码文件中获取待添加代码文件的代码段。
应用模块40,用于在待应用类文件中应用多个标记类代码文件中的一个或多个标记类代码文件,其中,待应用类文件为标记类代码文件应用的文件。
第二添加模块50,用于根据应用的标记类代码文件将多个待添加代码文件中的一个或多个待添加代码文件添加到待应用类文件中。
优选地,第二添加模块50包括:第四获取子模块,用于获取应用标记类文件的待应用类文件;第一筛选模块,用于从待应用类文件中筛选出以预设字符串开头的多个标记类代码文件;第五获取子模块,用于获取以预设字符串开头的多个标记类代码文件中标记类代码文件的属性值;第六获取子模块,用于获取以预设字符串开头的多个标记类代码文件中标记类代码文件的代码段;替换模块,用于分别将以预设字符串开头的多个标记类代码文件中标记类代码文件的代码段中占位符之间的字符串用以预设字符串开头的多个标记类代码文件中标记类代码文件的属性值替换。
具体地,第四获取子模块包括:第七获取子模块,用于获取目标文件夹中的所有子文件夹;第八获取子模块,用于遍历目标文件夹中的所有子文件夹,分别获取每个子文件夹中的代码文件;第三添加子模块,用于将代码文件添加到预设集合中;第二筛选模块,用于从预设集合中筛选出应用以预设字符串开头的多个标记类代码文件中标记类代码文件的待应用类文件。
该实施例的代码片段的添加装置包括确定模块10,第一添加模块20,转化模块30,应用模块40和第二添加模块50。通过该实施例的代码片段的添加装置解决了现有技术为代码片段添加标记类文件效率低的问题。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种代码片段的添加方法,其特征在于,包括:
确定多个待添加代码文件;
将所述多个待添加代码文件添加到目标文件夹中;
遍历所述目标文件夹中的待添加代码文件,将所述多个待添加代码文件依次转化为标记类代码文件,得到多个标记类代码文件;
在待应用类文件中应用所述多个标记类代码文件中的一个或多个标记类代码文件,其中,所述待应用类文件为所述标记类代码文件应用的文件;以及
根据应用的所述标记类代码文件将所述多个待添加代码文件中的一个或多个待添加代码文件添加到所述待应用类文件中。
2.根据权利要求1所述的代码片段的添加方法,其特征在于,遍历所述目标文件夹中的待添加代码文件,将所述多个待添加代码文件依次转化为标记类代码文件,得到多个标记类代码文件包括:
获取所述目标文件夹中的多个待添加代码文件;
分别为所述多个待添加代码文件生成以预设字符串开头的多个标记类代码文件;以及
将所述以预设字符串开头的多个标记类代码文件添加到所述目标文件夹中。
3.根据权利要求2所述的代码片段的添加方法,其特征在于,所述待添加代码文件中包括参数列表和代码段,其中,所述参数列表是用户输入参数的列表,所述参数列表中的参数可以替换所述代码段中占位符之间的字符串,其中,分别为所述多个待添加代码文件生成以预设字符串开头的多个标记类代码文件包括:
分别获取以所述预设字符串开头的多个标记类代码文件中标记类代码文件的属性值,其中,所述属性值为所述待添加代码文件的参数列表中的参数;以及
分别获取以所述预设字符串开头的多个标记类代码文件中标记类代码文件的代码段,
其中,分别获取以所述预设字符串开头的多个标记类代码文件中标记类代码文件包括:获取所述标记类代码文件中的代码段获取函数;通过调用所述代码段获取函数从所述待添加代码文件中获取所述待添加代码文件的代码段。
4.根据权利要求3所述的代码片段的添加方法,其特征在于,根据应用的所述标记类代码文件将所述多个待添加代码文件中的一个或多个待添加代码文件添加到所述待应用类文件中包括:
获取应用所述标记类文件的待应用类文件;
从所述待应用类文件中筛选出以所述预设字符串开头的多个标记类代码文件;
获取以所述预设字符串开头的多个标记类代码文件中标记类代码文件的属性值;
获取以所述预设字符串开头的多个标记类代码文件中标记类代码文件的代码段;以及
分别将以所述预设字符串开头的多个标记类代码文件中标记类代码文件的代码段中占位符之间的字符串用以所述预设字符串开头的多个标记类代码文件中标记类代码文件的属性值替换。
5.根据权利要求4所述的代码片段的添加方法,其特征在于,获取应用所述标记类文件的待应用类文件包括:
获取所述目标文件夹中的所有子文件夹;
遍历所述目标文件夹中的所有子文件夹,分别获取每个子文件夹中的代码文件;
将所述代码文件添加到预设集合中;以及
从所述预设集合中筛选出应用以所述预设字符串开头的多个标记类代码文件中标记类代码文件的待应用类文件。
6.一种代码片段的添加装置,其特征在于,包括:
确定模块,用于确定多个待添加代码文件;
第一添加模块,用于将所述多个待添加代码文件添加到目标文件夹中;
转化模块,用于遍历所述目标文件夹中的待添加代码文件,将所述多个待添加代码文件依次转化为标记类代码文件,得到多个标记类代码文件;
应用模块,用于在待应用类文件中应用所述多个标记类代码文件中的一个或多个标记类代码文件,其中,所述待应用类文件为所述标记类代码文件应用的文件;以及
第二添加模块,用于根据应用的所述标记类代码文件将所述多个待添加代码文件中的一个或多个待添加代码文件添加到所述待应用类文件中。
7.根据权利要求6所述的代码片段的添加装置,其特征在于,所述转化模块包括:
获取模块,用于获取所述目标文件夹中的多个待添加代码文件;
生成模块,用于分别为所述多个待添加代码文件生成以预设字符串开头的多个标记类代码文件;以及
第一添加子模块,用于将所述以预设字符串开头的多个标记类代码文件添加到所述目标文件夹中。
8.根据权利要求7所述的代码片段的添加装置,其特征在于,所述待添加代码文件中包括参数列表和代码段,其中,所述参数列表是用户输入参数的列表,所述参数列表中的参数可以替换所述代码段中占位符之间的字符串,其中,所述生成模块包括:
第一获取子模块,用于分别获取以所述预设字符串开头的多个标记类代码文件中标记类代码文件的属性值,其中,所述属性值为所述待添加代码文件的参数列表中的参数;以及
第二获取子模块,用于分别获取以所述预设字符串开头的多个标记类代码文件中标记类代码文件的代码段,
其中,分所述第二获取子模块包括:
第三获取子模块,用于获取所述标记类代码文件中的代码段获取函数;以及
第二添加子模块,用于通过调用所述代码段获取函数从所述待添加代码文件中获取所述待添加代码文件的代码段。
9.根据权利要求8所述的代码片段的添加装置,其特征在于,所述第二添加模块包括:
第四获取子模块,用于获取应用所述标记类文件的待应用类文件;
第一筛选模块,用于从所述待应用类文件中筛选出以所述预设字符串开头的多个标记类代码文件;
第五获取子模块,用于获取以所述预设字符串开头的多个标记类代码文件中标记类代码文件的属性值;
第六获取子模块,用于获取以所述预设字符串开头的多个标记类代码文件中标记类代码文件的代码段;以及
替换模块,用于分别将以所述预设字符串开头的多个标记类代码文件中标记类代码文件的代码段中占位符之间的字符串用以所述预设字符串开头的多个标记类代码文件中标记类代码文件的属性值替换。
10.根据权利要求9所述的代码片段的添加装置,其特征在于,所述第四获取子模块包括:
第七获取子模块,用于获取所述目标文件夹中的所有子文件夹;
第八获取子模块,用于遍历所述目标文件夹中的所有子文件夹,分别获取每个子文件夹中的代码文件;
第三添加子模块,用于将所述代码文件添加到预设集合中;以及
第二筛选模块,用于从所述预设集合中筛选出应用以所述预设字符串开头的多个标记类代码文件中标记类代码文件的待应用类文件。
CN201410779458.1A 2014-12-15 2014-12-15 代码片段的添加方法和装置 Active CN104461548B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410779458.1A CN104461548B (zh) 2014-12-15 2014-12-15 代码片段的添加方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410779458.1A CN104461548B (zh) 2014-12-15 2014-12-15 代码片段的添加方法和装置

Publications (2)

Publication Number Publication Date
CN104461548A true CN104461548A (zh) 2015-03-25
CN104461548B CN104461548B (zh) 2018-02-02

Family

ID=52907659

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410779458.1A Active CN104461548B (zh) 2014-12-15 2014-12-15 代码片段的添加方法和装置

Country Status (1)

Country Link
CN (1) CN104461548B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106055125A (zh) * 2016-08-01 2016-10-26 Tcl集团股份有限公司 一种字符混和输入方法及系统
CN108196841A (zh) * 2018-01-03 2018-06-22 武汉斗鱼网络科技有限公司 注释符号添加方法、装置及电子设备
CN108446115A (zh) * 2018-03-12 2018-08-24 中国银行股份有限公司 一种代码复用的方法及装置
CN110460512A (zh) * 2019-08-01 2019-11-15 北京达佳互联信息技术有限公司 系统消息生成方法、装置、服务器及存储介质
CN111913704A (zh) * 2020-07-30 2020-11-10 山东浪潮通软信息科技有限公司 一种基于VSCode快速开发GSP7脚本的方法及插件工具

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102306102A (zh) * 2011-08-25 2012-01-04 中兴通讯股份有限公司 程序文件自动生成方法及装置
CN102508669A (zh) * 2011-11-14 2012-06-20 浙江鸿程计算机系统有限公司 一种程序代码自动生成方法
CN102880468A (zh) * 2012-09-12 2013-01-16 浙江大学 一种用于ecu程序开发的代码智能提示方法及其系统
CN103135976A (zh) * 2011-11-30 2013-06-05 阿里巴巴集团控股有限公司 代码自动生成方法及装置
CN103500087A (zh) * 2013-09-17 2014-01-08 福建亿榕信息技术有限公司 一种基于maven插件和freemarker模版的代码生成方法及装置
US20140258840A1 (en) * 2013-03-05 2014-09-11 Beijing Founder Electronics Co., Ltd. Xml based custom code generating method and generator, computer program product and computer readable medium

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102306102A (zh) * 2011-08-25 2012-01-04 中兴通讯股份有限公司 程序文件自动生成方法及装置
CN102508669A (zh) * 2011-11-14 2012-06-20 浙江鸿程计算机系统有限公司 一种程序代码自动生成方法
CN103135976A (zh) * 2011-11-30 2013-06-05 阿里巴巴集团控股有限公司 代码自动生成方法及装置
CN102880468A (zh) * 2012-09-12 2013-01-16 浙江大学 一种用于ecu程序开发的代码智能提示方法及其系统
US20140258840A1 (en) * 2013-03-05 2014-09-11 Beijing Founder Electronics Co., Ltd. Xml based custom code generating method and generator, computer program product and computer readable medium
CN103500087A (zh) * 2013-09-17 2014-01-08 福建亿榕信息技术有限公司 一种基于maven插件和freemarker模版的代码生成方法及装置

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106055125A (zh) * 2016-08-01 2016-10-26 Tcl集团股份有限公司 一种字符混和输入方法及系统
CN108196841A (zh) * 2018-01-03 2018-06-22 武汉斗鱼网络科技有限公司 注释符号添加方法、装置及电子设备
CN108196841B (zh) * 2018-01-03 2021-04-27 武汉斗鱼网络科技有限公司 注释符号添加方法、装置及电子设备
CN108446115A (zh) * 2018-03-12 2018-08-24 中国银行股份有限公司 一种代码复用的方法及装置
CN110460512A (zh) * 2019-08-01 2019-11-15 北京达佳互联信息技术有限公司 系统消息生成方法、装置、服务器及存储介质
CN110460512B (zh) * 2019-08-01 2021-10-22 北京达佳互联信息技术有限公司 系统消息生成方法、装置、服务器及存储介质
CN111913704A (zh) * 2020-07-30 2020-11-10 山东浪潮通软信息科技有限公司 一种基于VSCode快速开发GSP7脚本的方法及插件工具

Also Published As

Publication number Publication date
CN104461548B (zh) 2018-02-02

Similar Documents

Publication Publication Date Title
CN104461548A (zh) 代码片段的添加方法和装置
CN104536997A (zh) 用于客户端界面的数据批量处理方法及装置
CN105683940A (zh) 处理混合流的数据流图
CN105389402A (zh) 一种面向大数据的etl方法和装置
CN104035754A (zh) 一种基于xml的自定义代码生成方法及生成器
CN104461516A (zh) 一种数据处理方法和装置
CN106874247A (zh) 一种报表生成方法及装置
CN104484204A (zh) 任务运行方法和装置
CN102710491B (zh) 使用pcap型过滤器和硬件辅助的patricia树的无损实时线速率过滤的方法和设备
CN109582289B (zh) 规则引擎中规则流的处理方法、系统、存储介质和处理器
JP2017511928A (ja) 入力レコメンデーションを確立するデータ処理方法及びシステム
Sanchez et al. Bigraphical modelling of architectural patterns
CN106815271A (zh) 查询条件生成方法和装置
CN106843956A (zh) 系统固件包的生成方法及装置
CN105320763B (zh) 一种将xml文件的内容导入数据库的方法和装置
CN105260405B (zh) 一种网络爬虫方法及装置
CN114880385B (zh) 一种通过自动组合流程接入地质灾害数据的方法及装置
CN110532267A (zh) 字段的确定方法、装置、存储介质及电子装置
CN104239072B (zh) 软件的程序代码的生成方法及装置
CN106484912A (zh) 一种云盘资源的处理方法和装置
CN106339381A (zh) 一种信息处理方法及装置
WO2016181526A1 (ja) 制御ロジック図解析装置および制御ロジック図解析方法
CN110297843A (zh) 用于b/s系统的数据查询方法及系统、终端
CN103324640B (zh) 一种确定搜索结果文档的方法、装置和设备
Fredericks et al. Exploring automated software composition with genetic programming

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: Code fragment adding method and device

Effective date of registration: 20190531

Granted publication date: 20180202

Pledgee: Shenzhen Black Horse World Investment Consulting Co., Ltd.

Pledgor: Beijing Guoshuang Technology Co.,Ltd.

Registration number: 2019990000503

PE01 Entry into force of the registration of the contract for pledge of patent right
CP02 Change in the address of a patent holder

Address after: 100083 No. 401, 4th Floor, Haitai Building, 229 North Fourth Ring Road, Haidian District, Beijing

Patentee after: Beijing Guoshuang Technology Co.,Ltd.

Address before: 100086 Beijing city Haidian District Shuangyushu Area No. 76 Zhichun Road cuigongfandian 8 layer A

Patentee before: Beijing Guoshuang Technology Co.,Ltd.

CP02 Change in the address of a patent holder