用于电子邮件的排序方法和系统 【技术领域】
本发明涉及电子邮件的处理技术,尤其涉及用于电子邮件的排序方法和系统。
背景技术
在过去的二十多年的时间里,随着电子技术的迅猛发展,计算机网络,尤其是互联网的性能和容量发生了爆炸性的增长。网络上的用户每天经由计算机网络接收和发送数以百万计电子邮件,以便进行商业上的交互或者为了休闲目的进行个人间的交互。事实上,电子邮件(email)已经变为极其流行的交互通道,来供人们交换信息。对于一些进行电子化办公的大公司来说,其员工每天都会收发大量的电子邮件。有些员工的工作甚至需要依赖于电子邮件,或者说,依赖于通过电子邮件的方式来进行交互,或依赖于整理和重复利用大量电子邮件中的信息。
经过一段时间的电子邮件交互,电子邮箱积累了许多接收和发送的电子邮件,这些电子邮件中存储的信息对于很多用户来说是其宝贵的信息资源。由于多种原因,很多电子邮件中的信息将被多次重复利用。因此,有效管理这些电子邮件,进而有效管理和搜索这些电子邮件中的信息,已经变得越来越重要。为此,电子邮件的服务器端软件和/或客户端软件提供了多种电子邮件的管理方式。客户端一般使用一个电子邮箱,其中可以包括多种用途的文件夹和视图,如收件箱、发件箱、草稿箱以及其它特定用途的文件夹。对电子邮箱中的电子邮件进行排序,是一种管理和搜索一些特定的电子邮件的有效方式。
在已有技术中,用于排序电子邮件的通用方式,包括依据接收的日期和时间顺序,依据发件人或收件人姓名的字母顺序,或者依据电子邮件主题的字母顺序等,对电子邮箱的一个文件夹或视图中的电子邮件进行排序。然而,已有技术中的排序方案并不总是适当的。这是因为在已有的排序方案下,用户感兴趣的电子邮件有可能被置于非理想的位置上。这显然会影响到电子邮件的查询以及信息的重复利用。尤其是在电子邮箱中积累了大量的电子邮件之后,排序方式的不足,将会影响电子邮件的查询效率以及重要信息的重复利用。
【发明内容】
鉴于已有技术的不足,本发明提供了一种用于对电子邮件进行排序的方法和系统。
本发明提供的一种用于电子邮件的排序方法,包括:获取电子邮箱的一文件夹中的多个电子邮件中每一个的至少一列信息;根据所述至少一列信息对所述多个电子邮件进行排序,其中,根据所述至少一列信息中至少部分字符串的被设置的权重对所述多个电子邮件进行排序。
本发明提供的一种用于电子邮件的排序系统,包括:获取模块,用于获取电子邮箱的一文件夹中的多个电子邮件中每一个的至少一列信息;排序模块,用于根据所述至少一列信息对所述多个电子邮件进行排序,其中,根据所述至少一列信息中至少部分字符串的被设置的权重对所述多个电子邮件进行排序。
通过本发明的方法或系统,将用户感兴趣地电子邮件以其感兴趣的方式进行排序。从而,用户可以对电子邮箱中电子邮件进行更加有效的排序和搜索,以便重复利用电子邮件中的信息。
【附图说明】
图1示出了根据本发明一实施例对电子邮件进行排序的流程图。
图2示出了根据本发明的另一实施例的系统方框图。
图3示出了根据本发明的另一实施例的系统方框图。
图4示出了根据本发明的另一实施例的系统方框图。
【具体实施方式】
以下参照按照本发明实施例的方法、装置描述本发明。其中,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机程序指令实现。这些计算机程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得通过计算机或其它可编程数据处理装置执行的这些指令,产生实现流程图和/或框图中的方框中规定的功能/操作的装置(means)。
也可以把这些计算机程序指令存储在能指令计算机或其它可编程数据处理装置以特定方式工作的计算机可读介质中,这样,存储在计算机可读介质中的指令产生一个包括实现流程图和/或框图中的方框中规定的功能/操作的指令装置(instruction means)的制造品。
还可以把计算机程序指令加载到计算机或其它可编程数据处理装置上,使得在计算机或其它可编程数据处理装置上执行一系列操作步骤,以产生计算机实现的过程,从而在计算机或其它可编程装置上执行的指令就提供实现流程图和/或框图中的方框中规定的功能/操作的过程。
图1示出了根据本发明一实施例对电子邮件进行排序的流程图。其中,开始之后,在步骤S110,获取电子邮箱的一文件夹中的多个电子邮件中每一个的至少一列信息。其中所述多个电子邮件可以是从电子邮箱的所述文件夹中的选定的多个电子邮件,或者是所述文件夹中的全部电子邮件。所述至少一列信息可以是电子邮件的发件人信息、接收日期信息、接收时间信息或主题(subject)等等。
在步骤S120,提取所述至少一列信息中的至少部分字符串。所述至少部分字符串可以位于所述至少一列信息的前部、中部或后部。其中,所述至少部分字符串可以是日期字符串,所述日期字符串可以位于所述主题中。所述至少部分字符串也可以是发件人/收件人的姓名。
在步骤S130,设置所述至少部分字符串的权重。例如,如将发件人的姓li和wang的权重设置为相同。所述字符串的权重可以根据所述字符串的编码设置,还可以直接设置字符串的相邻关系和顺序。还可以建立一定制的字符串权重表,用于存储字符串及其被设置的权重。
在步骤S140,获取电子邮箱的一文件夹中的需要进行排序的多个电子邮件中每一个的至少一列信息。其中所述多个电子邮件可以是从电子邮箱的所述文件夹中的选定的需要进行排序的多个电子邮件,或者是所述文件夹中的全部电子邮件。本领域的技术人员可以理解,步骤S140也可以与步骤S110相同,从而可以省略步骤S140。
在步骤S150,根据所述至少一列信息对所述多个电子邮件进行排序,其中,根据所述至少一列信息中至少部分字符串的被设置的权重对所述多个电子邮件进行排序。可以根据定制的字符串权重表中设置的权重,对所述多个电子邮件进行排序。例如,发件人的姓li和wang的权重设置为相同,则发件人为姓li或wang的电子邮件将被相邻排列。还可以根据直接设置字符串的相邻关系和顺序,对所述多个电子邮件进行排序。
对所述多个电子邮件进行排序,可以优先根据所述至少部分字符串的被设置的权重对所述多个电子邮件进行排序。换言之,设置权重的字符串优先考量,未设置权重的字符串用已有的排列顺序方式进行排序。例如,将邮件主题中包含的日期字符串2008-11-06、2008-11-13和2008-11-20的权重设置为n、n+1和n+2,则优先根据设置权重的字符串进行排序可以将主题中包含这3个之一的邮件按照日期的先后排列。
本领域的技术人员可以理解,还可以获取所述多个电子邮件的另一列信息。这样,可以根据所述另一列信息对所述多个电子邮件排序之后,再根据所述至少一列信息对所述多个电子邮件进行排序;反之亦然。
一封电子邮件时同时发给一个美国人和一个中国人。美国人使用英文邮件客户端软件在回复的时候用的是“Re:”,而中国人使用中文邮件客户端软件,在回复的时候用的是“回复:”。这样一来,根据已有技术,排序的时候就会把“Re:”和“回复:”分开,这样的情况是用户所不想看到的。根据本发明的一实施例,可以把一类的邮件主题前缀(Prefix)作为一种的标志,比如:“Fw:,fw:,回复:”等等。如果需要在排序时不考虑它们的影响,把相关电子邮件排在一块,只要给这些邮件主题前缀设置相同的权重就可以了。
本领域的技术人员可以理解,在上述实施例中,为字符串设置权重的步骤可以与排序的步骤分别进行。而排序的步骤,可以利用已有的设置了字符串的权重。换言之,在一个已经预先设置了字符串权重的电子邮件系统中,用户直接利用设置好的字符串权重表对电子邮箱中的电子邮件进行排序。即上述方法中的步骤S140和S150本身可以形成邮件客户端软件向用户提供的完整的排序方法。
根据本发明的另一实施例,上述用于电子邮件的排序方法,还可以进一步包括接收一字符串权重表的步骤。这样,就可以按照接收的字符串权重表中设置的字符串的权重,对电子邮件进行排序。
图2示出了根据本发明的另一实施例的系统方框图。其中示出了根据该实施例的用于设置字符串权重和对电子邮件进行排序的电子邮件排序系统200。电子邮件排序系统200包括获取电子邮件主题字符串模块210、获取特殊字符串模块220、排序模块230、可定制的用户界面模块240、可定制的字符权重表模块250。
以下结合改变字符串中特殊字符的权重的应用,对图2所示的电子邮件排序系统200进行详细说明。
电子邮件的主题里面会含有各种特殊字符,通过改变这些特殊字符的排序权重,就可以得到更合理的排序结果。例如,主题里的字符串中包含日期,或者字符串中包含“Re:”,“FW:”等特殊标志字符。可以通过以下方式来改变这些特殊字符的排序权重,以便得到更合理的排序结果。
当字符串中包含日期字符串的时候,这些字符串按照字符的排序规则进行排序的结果会导致日期顺序的混乱,如下列表1所示。这种结果与用户的排序期望相悖。其中,排序结果中主题末尾的日期没有按照日期顺序排序,而是按照字母顺序排序,从而导致日期排列顺序混乱。
表1
电子邮件主题列表(Mail subjects list) Beijing XXX Team Weekly Report by 12/14/2007 Beijing XXX Team Weekly Report by 12/21/2007 Beijing XXX Team Weekly Report by 2007-12-29 Beijing XXX Team Weekly Report by 6/8/2007 Beijing XXX Team Weekly Report by 7/6/2007
而按照本发明的实施例对日期字符串设置权重后进行排序,字符串中的日期字符会当成一个整体的日期元素,并且日期元素和日期元素进行比较的时候不用字母顺序,而是用日期顺序,从而排出来的结果如下表2。
表2
电子邮件主题列表(Mail subjects list) Beijing XXX Team Weekly Report by 6/8/2007 Beijing XXX Team Weekly Report by 7/6/2007 Beijing XXX Team Weekly Report by 12/14/2007 Beijing XXX Team Weekly Report by 12/21/2007 Beijing XXX Team Weekly Report by 2007-12-29
图2中的获取电子邮件主题字符串模块210,用于获取电子邮件205的主题字符串。
常用的电子邮件一般遵循两个协议,POP3协议和MIME协议。POP3协议全名为“Post Office Protocol-Version 3(即,第3代邮局协议)”,是TCP/IP协议族中的一员,此协议主要用于把邮件从服务器端传输到客户端。MIME协议全名为“Multipurpose Internet Mail Extensions(即,多用途因特网邮件扩展标准)”,是一个互联网标准,此协议用来格式化邮件内容。
从服务器上传下来的邮件,其内容是MIME格式的,包括邮件头和邮件体。获取电子邮件主题字符串模块210获取的邮件主题就是邮件头的一部分,用“Subject”字段标示。如下是一封完整的MIME格式的信,可以获取Subject之后的字符串Beijing XXX Team Weekly Report by 12/14/2007即可。
Received:by 10.86.66.1with HTTP;Mon,6Oct 200800:40:42-0700(PDT) Message-ID:<fc3121650810060040o749ec1c2lafc7a416d06afd6a@mail.xxx.com> Date:Mon,6Oct 200815:40:42+0800 From:″=?GB2312?B?1r6yqNfz?=″<xxx@xxx.com> To:xxx@xxx.com Subject:Beijing XXX Team Weekly Report by 12/14/2007 MIME-Version:1.0 Content-Type:multipart/alternative; boundary=″----=_Part_6548_1407620.1223278842520″ Delivered-To:xxx@xxx.com ------=_Part_6548_1407620.1223278842520 Content-Type:text/plain;charset=ISO-8859-1 Content-Transfer-Encoding:7bit Content-Disposition:inline this is a test mail.
图2中的获取特殊字符串模块220,用于获取主题字符串中的特殊字符串,如日期字符串。获取电子邮件主题字符串模块210获取到的邮件主题为“Beijing XXX Team Weekly Report by 12/14/2007”。获取特殊字符串模块220可以通过正则表达式获取其中的日期字符串。正则表达式(regularexpression)是用一个“字符串”来描述一个特征,然后去验证另一个“字符串”是否符合这个特征。例如,可以从http://en.wikipedia.org/wiki/Regular_expression得到正则表达式的详细说明。下面来说明怎样用正则表达式来表示日期。
如“YYYY/MM/DD”所示格式的日期,可以用下面的正则表达式来表示:
^\d{4}(\-|\/|\.)\d{1,2}\1\d{1,2}$
再加上“YY/MM/DD”这种格式,可以用如下正则表达式:
^(^(\d{4}|\d{2})(\-|\/|\.)\d{1,2}\3\d{1,2}$)
对于得到邮件的主题字符串,可以用日期正则表达式去匹配该字符串,匹配出来的就是日期字符串。正则表达式是一个基本的功能模块,各种开发语言,比如c/c++,java,c#等都有自己的正则表达式库,直接调用即可。
图2中的权重定制用户界面模块240可以给用户提供一个定制窗口,以便用户选择或输入需要设置权重的字符串。例如,任意输入需要把权重设为0的字符。然后,通过可定制的字符权重表模块250来改变日期字符串的排序权重。对于解析出来的日期字符串,可以通过以下方式来改变日期字符串的权重。以下面两个字符串为例。
字符串1:Beijing XXX Team Weekly Report by 12/14/2007
字符串2:Beijing XXX Team Weekly Report by 6/8/2007
按照字母顺序排,字符串1排在字符串2的前面。但是更合理的顺序应该是字符串2排在字符串1的前面,因为按照日期顺序6/8/2007在12/14/2007的前面。可以通过改变日期字符串的权重,然后根据已经识别出日期“12/14/2007”和“6/8/2007”进行排序来达到目的。
在计算机中字符能进行比较大小来排序是因为后台有一个数据文件,其中保存了所有字符的大小关系。可以加一个日期权重表或称为日期排序表,这个日期排序表中的排序规则为YYYY MM DD,年为4位,月为2位,日为2位,不满的前面补零。比如“12/14/2007”和“6/8/2007”,通过比较年2007与2007,月12和08,就可以得出“6/8/2007”排在“12/14/2007”的前面。可定制的字符权重表模块250,调用一个定制的字符串权重表并传送给排序模块230。排序模块230就可以根据任意定制字符串的顺序进行排序。该字符串权重表可以存储在图2中的持久存储器260中,并根据需要进行加载和调用。
排序模块230,根据所述至少一列信息(如主题信息)对所述多个电子邮件进行排序,其中,根据所述至少一列信息中至少部分字符串(如日期字符串)的被设置的权重对所述多个电子邮件进行排序。显示器270,用于显示排序后的结果。
根据本发明的另一实施例,还可以处理字符串中包含“Re:”,“FW:”等特殊标志字符,以便改进排序结果。
在电子邮件的主题字符串中经常会含有“Re:”,“FW:”“回复:”等特殊字符,这些特殊字符如果按照字母顺序去排序,会得到如下的排序结果,这是不合理的。
电子邮件主题列表(Mail subjects list) cAPI CDL IT Reminder Re:cAPI Re:cAPI Re:cAPI
因为cAPI和Re:cAPI是同一主题的邮件,应该排在一块,以方便用户查看。
如下结果是根据本发明一实施例排序后的更合理的结果。
电子邮件主题列表(Mail subjects list) cAPI Re:cAPI Re:cAPI Re:cAPI CDL IT Reminder
在具体的实现中,首先确定什么样的字符是特殊字符,然后找到所有的这些字符,最后可以把这些字符的权重设置为0。下面详细说明这三个步骤。
对于定制什么样的字符是特殊字符,可以给用户提供一个定制窗口,用户可任意输入需要把权重设为0的字符。
对于匹配特殊字符,在排序的时候,可以把这些特殊字符匹配出来。因为都是字符,直接比较判断大小即可。
对于设置特殊字符权重为0,在后台可以设置一个定制的排序权重文件,在此文件中把这些特殊字符的权重设置为0即可。这样,可以根据权重设置为0的字符之后的字符进行排序,以便改进排序结果。
图3示出了根据本发明的另一实施例的系统方框图。其中示出了根据该实施例的用于设置字符串权重和对电子邮件进行排序的电子邮件排序系统300。电子邮件排序系统300包括获取邮件发件人模块310、获取特殊字符模块320、排序模块330、权重定制用户界面模块340和附加字符权重表模块350。
可以根据字符串之间的某种关系改变字符串的权重,以便改进排序结果。以下结合改变字符串中特殊字符的权重的应用,对图3所示的电子邮件排序系统300进行详细说明。其中,获取邮件发件人模块310,用于获取所有邮件的发件人姓名字符串。获取特殊字符模块320,用于根据附加字符权重表中定义的特殊字符来获取所有姓名中的特殊姓名字符串。排序模块330:排序模块根据正常排序和定制排序,接收附加字符权重表模块350的输入,以便排出用户需要的结果。权重定制用户界面模块340,用于允许用户定制哪些字符/字符串是特殊的,并改变其权重。附加字符权重表模块350,用于存储用户特殊定制的字符串的权重大小。
电子邮件列表中有很多列的信息,每个列对应于邮件的一个字段。这些字段包括发件人,主题,接收时间等。每种字段都包含很多不同的字符串,比如发件人字段包括所有发件人的名字字符串。根据这些字段字符串之间的某种特定的关系,就可以排列出更符合用户使用习惯的排序结果。比如,某些发件人是属于一个部门的,按照发件人排序的时候,这些属于一个部门的人如果能排在一块可以方便用户查阅。再比如,某些邮件讨论的是一个主题,或者某个主题周期性地发布信息。那么在按照主题排序的时候,这些邮件能排在一块的话是一个更合理的结果。总之,可以根据某些特定的关系来修改字符串的排序权重,让存在某种关系的多个邮件排序的时候排在一块,以方便用户查阅。
例如,把同一个部门的邮件排在一块。张三,李四,王五是某公司IT部门的员工,陈六是他们的经理。陈六有这样一个需求,当按照发件人排序的时候,希望他的员工张三,李四,王五能按顺序排在一块,并且排在其他所有其他所有人的前面,以方便查阅。
获取邮件发件人模块310,可以获取收件箱所有邮件305的发件人姓名字符串。如上文所述,POP3(Post Office Protocol-Version 3)用于把邮件从服务器端传输到客户端。传输到客户端的邮件一般是符合MIME协议的。MIME包括邮件头和邮件体。获取的发件人就是邮件头的一部分,用“From”字段标示。如下是一封完整的MIME格式的信,可以从中获取“From”字段的字符串。
Received:by 10.86.66.1with HTTP;Mon,6 Oct 2008 00:40:42-0700(PDT) Message-ID:<fc3121650810060040o749ec1c2lafc7a416d06afd6a@mail.xxx.com> Date:Mon,6Oct 2008 15:40:42+0800 From:″=?GB2312?B?1r6yqNfz?=″<xxx@xxx.com> To:xxx@xxx.com Subject:Beijing XXX Team Weekly Report by 12/14/2007 MIME-Version:1.0 Content-Type:multipart/alternative; boundary=″----=_Part_6548_1407620.1223278842520″ Delivered-To:xxx@xxx.com ------=_Part_6548_1407620.1223278842520 Content-Type:text/plain;charset=ISO-8859-1 Content-Transfer-Encoding:7bit Content-Disposition:inline this is a test mail.
″=?GB2312?B?1r6yqNfz?=″表示的就是发件人的姓名,该姓名是用GB2312编码的。
权重定制用户界面模块340,用于允许用户定制哪些字符/字符串,如张三,李四,王五是特殊的,并改变其权重。然后,将改变后的权重存储到附加字符权重表模块350。按照发件人进行排序的时候,张三,李四,王五这三个名字按照已有技术的排序方法根本排不到一块。排出来的结果一般如下表(按照拼音顺序排列)
发件人 曹XX 李四 马XX
发件人 王五 杨XX 张三
从上表中可以看到张三,李四,王五被不同的人隔开,在实际收件箱中,发件人有成百上千个,导致张三,李四,王五隔得非常的远,找起来非常的不方便。他们的经理陈六希望看到的是如下的排序结果。张三,李四,王五排在一块,并且张三排在最前面,李四排在其次,王五排在最后,接下来排列的才是其他的发件人,如下表所示。
发件人 张三 李四 王五 曹XX 马XX 杨XX
计算机中字符串能比较大小并进行排序是因为后台有一个数据文件,该文件保存了所有字符的大小关系。字符串进行比较的时候是一个字符一个字符的比较,先比较第一个字符,如果第一个字符相等再比较第二个字符,以此类推,直到比较出结果为止。
根据本发明的一实施例,可以附加一个特殊的文件,该文件用来保存用户定制的字符的排序大小关系。大小即权重,一般可用数字来描述。Unicode包含世界上所有的字符,其编码是从0x0000到0xFFFF,即从0到65535就可以标识出所有字的权重。用户定制的权重可以比65535大,比如从70000开始。可以把“张三”看做一个特殊的字符,给他权重70003;李四也定制为一个特殊字符,给权重70002;王五同理给权重70001。这样在排序的时候,因为张三,李四,王五的权重比所有字符的最高权重65535还要大,所以会排在所有其他发件人的前面;又因为70003>70002>70001,所以排出来的结果是张三、李四、王五。这样,排序模块330根据正常排序和定制排序,接收附加字符权重表模块350的输入,就可以排出用户需要的结果。排序结果由显示器370显示。
图4示出了根据本发明的另一实施例的系统方框图。其中示出了一种用于电子邮件的排序系统400。排序系统400包括获取模块410,用于获取电子邮箱的至少一文件夹中的多个电子邮件中每一个的至少一列信息;以及排序模块430,用于根据所述至少一列信息对所述多个电子邮件进行排序,其中,根据所述至少一列信息中至少部分字符串的被设置的权重对所述多个电子邮件进行排序。该两个模块可以完成根据字符串设置的权重进行排序的功能,因而可以共同够成一排序系统。
根据本发明的另一实施例,排序系统400还可以进一步包括字符串权重表模块450,用于存储定制的字符串权重表,所述排序模块420进一步配置为:根据定制的字符串权重表中设置的权重,对所述多个电子邮件进行排序。
根据本发明的另一实施例,排序系统400还可以进一步包括用于接收所述字符串权重表的接收模块490。
根据本发明的另一实施例,排序系统400还可以进一步包括:提取字符串模块420,用于提取所述至少一列信息中的至少部分字符串;以及权重设置模块480,用于设置所述至少部分字符串的权重。
根据本发明的另一实施例,其中,所述至少部分字符串可以为位于主题中的日期字符串,提取字符串模块420可以进一步配置为根据日期的正则表达式提取所述日期字符串。
根据本发明的另一实施例,所述权重设置模块480可以进一步配置为根据字符串的编码设置设置所述至少部分字符串的权重。
根据本发明的另一实施例,所述权重设置模块480可以进一步配置为将所述至少部分字符串的权重设置为相同。
根据本发明的另一实施例,其中,所述至少一列信息为电子邮件的发件人信息、接收日期信息、接收时间信息或主题。
根据本发明的另一实施例,其中,所述获取模块410可以进一步配置为从电子邮箱的所述至少一个文件夹中的选定所述多个电子邮件;并且排序模块430可以进一步配置为优先根据所述至少部分字符串的被设置的权重对所述多个电子邮件进行排序。
根据本发明的另一实施例,其中,所述至少部分字符串为发件人/收件人的姓名或者为位于主题中的日期字符串。
根据本发明的另一实施例,其中,所述权重设置模块480和所述字符串权重表模块450,可以合并为一个模块,用于执行它们的上述功能。
本发明还提供了一种存储介质或信号载体,其中包括用于执行根据本发明的方法的指令。
附图中的流程图和框图,图示了按照本发明实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,所述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
所属技术领域的技术人员知道,本发明可以体现为系统、方法或计算机程序产品。因此,本发明可以具体实现为以下形式,即,可以是完全的硬件、完全的软件(包括固件、驻留软件、微代码等)、或者本文一般称为“电路”、“模块”或“系统”的软件部分与硬件部分的组合。此外,本发明还可以采取体现在任何有形的表达介质(medium of expression)中的计算机程序产品的形式,该介质中包含计算机可用的程序码。
可以使用一个或多个计算机可用的或计算机可读的介质的任何组合。计算机可用的或计算机可读的介质例如可以是——但不限于——电的、磁的、光的、电磁的、红外线的、或半导体的系统、装置、器件或传播介质。计算机可读介质的更具体的例子(非穷举的列表)包括以下:有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、诸如支持因特网或内部网的传输介质、或者磁存储器件。注意计算机可用的或计算机可读的介质甚至可以是上面印有程序的纸张或者其它合适的介质,这是因为,例如可以通过电扫描这种纸张或其它介质,以电子方式获得程序,然后以适当的方式加以编译、解释或处理,并且必要的话在计算机存储器中存储。在本文件的语境中,计算机可用的或计算机可读的介质可以是任何含有、存储、传达、传播、或传输供指令执行系统、装置或器件使用的或与指令执行系统、装置或器件相联系的程序的介质。计算机可用的介质可包括在基带中或者作为载波一部分传播的、由其体现计算机可用的程序码的数据信号。计算机可用的程序码可以用任何适当的介质传输,包括——但不限于——无线、电线、光缆、RF等等。
用于执行本发明的操作的计算机程序码,可以以一种或多种程序设计语言的任何组合来编写,所述程序设计语言包括面向对象的程序设计语言——诸如Java、Smalltalk、C++之类,还包括常规的过程式程序设计语言——诸如”C”程序设计语言或类似的程序设计语言。程序码可以完全地在用户的计算上执行、部分地在用户的计算机上执行、作为一个独立的软件包执行、部分在用户的计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在后一种情形中,远程计算机可以通过任何种类的网络——包括局域网(LAN)或广域网(WAN)——连接到用户的计算机,或者,可以(例如利用因特网服务提供商来通过因特网)连接到外部计算机。
以上结合优选法方案对本发明进行了详细的描述,但是可以理解,以上实施例仅用于说明而非限定本发明。本领域的技术人员可以对本发明的所示方案进行修改而不脱离本发明的范围和精神。