一种防出错的文本数据复制粘贴方法、系统及介质与流程

文档序号:26139286发布日期:2021-08-03 14:22阅读:201来源:国知局
一种防出错的文本数据复制粘贴方法、系统及介质与流程

本发明属于计算机技术领域,具体涉及一种防出错的文本数据复制粘贴方法、系统及介质。



背景技术:

很多计算机相关的场景都会使用到文本的复制和粘贴。但是由于各种原因,在文本的复制和粘贴过程中会发生错误。尤其是在多次复制粘贴的过程中,大大增加了错误几率。例如:1、复制粘贴的过程比较复杂。例如一个文本信息需要在多人之间进行传递,并进行多次的复制粘贴。2、错误的操作。在复制粘贴过程按错了快捷键,不小心按多了一些按键,导致文本内容不小心增加/删除/修改了一两个符号。3、复制粘贴过程,放到了一些不合适的编辑框。例如,一些编辑框会自动将所有粘贴进入的文本里的字母自动转为大写,导致内容内的字母全部变为大写。很多时候,这些错误并不会马上发现,而是到问题滞后的明显出现时才能发现,这对个人和企业都是一种资源的损失。

所以要避免这种情况,就必须依赖个人的习惯,需要细心/细致才能防止这种情况的发生,例如验证码、电话号码、邀请码比较简单容易发现出错。但是如果文本内容较长,在多次的复制粘贴过程中也会很难确认到底是否出错。



技术实现要素:

针对现有技术中的缺陷,本发明提供一种防出错的文本数据复制粘贴方法、系统及介质,降低了文本复制粘贴过程中的错误率。

第一方面,一种防出错的文本数据复制粘贴方法,包括以下步骤:

在操作系统中增加专有格式复制项和专有格式粘贴项;

当操作系统检测到专有格式复制项被触发时,获取选中的复制文本,将复制文本转换为专有格式;

当操作系统针对该专有格式进行复制粘贴时,将专有格式在剪贴板和指定的编辑框之间传递;

当操作系统检测到专有格式粘贴项被触发时,从专有格式中解析出复制文本,将复制文本粘贴至指定的编辑框中。

优选地,所述专有格式复制项和专有格式粘贴项包括在操作系统中编辑栏内设置的按钮或者是在操作系统中设置的快捷键。

优选地,所述将复制文本转换为专有格式具体包括:

通过预设的文本哈希算法对复制文本进行处理,得到文本哈希;

根据文本哈希将复制文本转换为专有格式。

优选地,所述文本哈希算法包括:

将所述复制文本按行分开,得到n行内容;

针对每1行内容进行sha256运算,得到n个1行哈希;

针对每2行内容进行sha256运算,得到n/2个2行哈希;

针对每4行内容进行sha256运算,得到n/4个4行哈希;

...

针对每2^m行内容进行sha256运算,得到1个2^m行哈希,其中2^m≥n;

所述文本哈希包括:行数n、1个2^m行哈希、...、n/4个4行哈希、n/2个2行哈希、n个1行哈希;

所述专有格式包括:固定的格式头、sha256哈希、复制文本、文本哈希。

优选地,所述当操作系统针对该专有格式进行复制粘贴时,将专有格式在剪贴板和指定的编辑框之间传递具体包括:

当操作系统接收到针对一编辑框中的专有格式发出复制指令时,将该编辑框中的专有格式传递到剪贴板中;

当操作系统接收到针对剪贴板中专有格式发出粘贴指令时,将剪贴板中的专有格式传递到指定的编辑框中。

优选地,所述将剪贴板中的专有格式传递到指定的编辑框具体包括:

将专有格式以二进制或文件的格式粘贴至指定的编辑框;

所述将该编辑框中的专有格式传递到剪贴板具体包括:

检测专有格式是否存在内容已被破坏提示;

如果是,显示该内容已被破坏提示;

如果不是,当专有格式为二进制或文件的格式、且专有格式中包含所述格式头时,获取专有格式中sha256哈希、复制文本、以及文本哈希中的2^m行哈希;利用该sha256哈希对复制文本进行哈希运算;如果运算结果与2^m行哈希不一致,生成所述内容已被破坏提示。

优选地,所述当操作系统检测到专有格式粘贴项被触发时,从专有格式中解析出复制文本,将复制文本粘贴至指定的编辑框中具体包括:

当检测到专有格式粘贴项被触发时,如果专有格式不存在所述内容已被破坏提示,获取专有格式中的sha256哈希、复制文本和文本哈希,将该复制文本粘贴至指定的编辑框中;

获取该编辑框最近的粘贴文本,利用所述文本哈希算法和该sha256哈希对粘贴文本进行哈希运算;如果运算结果与文本哈希不一致,生成错误提示。

优选地,所述如果运算结果与文本哈希不一致,生成错误提示具体包括:

依次比较运算结果与文本哈希中2^m行哈希、...、4行哈希、2行哈希、1行哈希;

当比较结果中存在不一致时,根据比较结果获得错误行数,生成包含错误行数的所述错误提示。

第二方面,一种防出错的文本数据复制粘贴系统,执行第一方面所述的方法。

第三方面,一种计算机可读存储介质,所述计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行第一方面所述的方法。

由上述技术方案可知,本发明提供的防出错的文本数据复制粘贴方法、系统及介质,降低了文本复制粘贴过程中的错误率。

附图说明

为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍。在所有附图中,类似的元件或部分一般由类似的附图标记标识。附图中,各元件或部分并不一定按照实际的比例绘制。

图1为本发明实施例一提供的文本数据复制粘贴方法的流程图。

具体实施方式

下面将结合附图对本发明技术方案的实施例进行详细的描述。以下实施例仅用于更加清楚地说明本发明的技术方案,因此只作为示例,而不能以此来限制本发明的保护范围。需要注意的是,除非另有说明,本申请使用的技术术语或者科学术语应当为本发明所属领域技术人员所理解的通常意义。

应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。

还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。

如在本说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。

实施例一:

一种防出错的文本数据复制粘贴方法,参见图1,包括以下步骤:

s1:在操作系统中增加专有格式复制项和专有格式粘贴项;

优选地,所述专有格式复制项和专有格式粘贴项包括在操作系统中编辑栏内设置的按钮或者是在操作系统中设置的快捷键。

具体地,操作系统的剪贴板主要是在操作系统范围内对用户的文本、二进制信息、图片、多媒体、文件等各种数据的复制粘贴的传输通道。该方法可以在操作系统编辑栏的右键弹出菜单和上下文弹出菜单中增加专有格式复制项(名称可以命名为复制为专有格式)和专有格式粘贴项(名称可以命名为专有格式粘贴)。如果操作系统是windows,可以在操作系统范围内增加两个对应的新快捷键。

s2:当操作系统检测到专有格式复制项被触发时,获取选中的复制文本,将复制文本转换为专有格式;

优选地,所述将复制文本转换为专有格式具体包括:

通过预设的文本哈希算法对复制文本进行处理,得到文本哈希;

根据文本哈希将复制文本转换为专有格式。

具体地,所述文本哈希算法包括:

将所述复制文本按行分开,得到n行内容;

针对每1行内容进行sha256运算,得到n个1行哈希;

针对每2行内容进行sha256运算,得到n/2个2行哈希;

针对每4行内容进行sha256运算,得到n/4个4行哈希;

...

针对每2^(m-1)行内容进行sha256运算,得到2个2^(m-1)行哈希,2个2^(m-1)行哈希分别表示前半复制文本的哈希和后复制半文本的哈希。

针对每2^m行内容进行sha256运算,得到1个2^m行哈希,其中2^m≥n,1个2^m行哈希表示整个复制文本的哈希;例如:sha256("你好")=670d9743542cae3ea7ebe36af56bd53648b0a1126162e78d81a32934a711302e,即哈希值为32bytes(256bits)的二进制数字。

所述文本哈希包括:行数n(8字节)、1个2^m行哈希、...、n/4个4行哈希、n/2个2行哈希、n个1行哈希;由此可见,文本哈希一共有1+2+4+....+n/4+n/2+n≤2n个哈希值,如果每个哈希值为32字节,则文本哈希的大小小于等于32*2n字节,例如对于1000行的文本,文本哈希的大小小于32*2000字节=64k。

所述专有格式包括:固定的格式头(可以为16进制,例如为86d514934a232d482932ced9ac6d496a,格式头用于快速地判定是否为专有格式)、sha256哈希(32字节)、复制文本、文本哈希。专有格式还可以包括8字节的复制文本长度和8字节的文本哈希长度。

s3:当操作系统针对该专有格式进行复制粘贴时,将专有格式在剪贴板和指定的编辑框之间传递,具体包括:

当操作系统接收到针对一编辑框中的专有格式发出复制指令时,将该编辑框中的专有格式传递到剪贴板中;

当操作系统接收到针对剪贴板中专有格式发出粘贴指令时,将剪贴板中的专有格式传递到指定的编辑框中。

具体地,由此可见,在同一个操作系统或者是不同操作系统内,专有格式在剪贴板->编辑框->剪贴板->编辑框中传递,始终保持格式不变。专有格式在剪贴板和指定的编辑框之间传递可以由操作系统原有的粘贴复制功能实现。

优选地,所述将剪贴板中的专有格式传递到指定的编辑框具体包括:

将专有格式以二进制或文件的格式粘贴至指定的编辑框;

具体地,专有格式的粘贴为专有格式从剪贴板到编辑框的传递。在该过程中,需要判定编辑框是否支持二进制,如果否,弹出提示“编辑框不支持二进制”;如果是,将专有格式以文件形式粘贴至编辑框。

所述将该编辑框中的专有格式传递到剪贴板具体包括:

检测专有格式是否存在内容已被破坏提示;

如果是,显示该内容已被破坏提示;

如果不是,当专有格式为二进制或文件的格式、且专有格式中包含所述格式头时,获取专有格式中sha256哈希、复制文本、以及文本哈希中的2^m行哈希;利用该sha256哈希对复制文本进行哈希运算;如果运算结果与2^m行哈希不一致,生成所述内容已被破坏提示。

具体地,该方法在专有格式的普通复制过程中需要进行校验,当发现内容被破坏时,提醒用户。专有格式的复制为专有格式从编辑框到剪贴板的传递。如果复制的专有格式不是文件或二进制格式,或者复制的专有格式不包含上述格式头,则交由操作系统处理。如果复制的专有格式是文件或二进制格式,且复制的专有格式包含上述格式头,获取专有格式中的sha256哈希、复制文本、2^m行哈希,对复制文本进行sha256运算,如果运算结果与2^m行哈希一致,表示复制的内容没有被破坏,否则生成内容已被破坏提示。

s4:当操作系统检测到专有格式粘贴项被触发时,从专有格式中解析出复制文本,将复制文本粘贴至指定的编辑框中,具体包括:

当检测到专有格式粘贴项被触发时,如果专有格式不存在所述内容已被破坏提示,获取专有格式中的sha256哈希、复制文本和文本哈希,将该复制文本粘贴至指定的编辑框中;

获取该编辑框最近的粘贴文本,利用所述文本哈希算法和该sha256哈希对粘贴文本进行哈希运算;如果运算结果与文本哈希不一致,生成错误提示。

具体地,该方法在进行专有格式粘贴时,需要校验粘贴内容是否被破坏。校验方法与上述专有格式普通复制方法一样。当粘贴内容没有被破坏时,获取专有格式中复制文本,将复制文本粘贴到指定的编辑框中,从该编辑框中获得最近的粘贴文本,使用文本哈希算法对粘贴文本进行运算,将运算结果与专有格式的文本哈希进行比较。

优选地,所述如果运算结果与文本哈希不一致,生成错误提示具体包括:

依次比较运算结果与文本哈希中2^m行哈希、...、4行哈希、2行哈希、1行哈希;

当比较结果中存在不一致时,根据比较结果获得错误行数,生成包含错误行数的所述错误提示。

具体地,例如首先比较2^m行哈希,如一致,说明全文一致,结束处理。否则比较2个2^(m-1)行哈希,确定是复制文本前1/2不一致还是复制文本后1/2不一致。根据上一次的结果比较前1/2或者是后1/2文本中2^(m-2)行哈希,确定是上一次结果(前1/2或后1/2)的前1/4不一致还是后1/4不一致。依次处理,该方法每次都可以在上一次结果对应范围内,更近一步的缩小1/2范围的判断,比对到1行哈希,就可以确定复制文本中具体哪一行不一致。该方法可以快速找到复制文本中不一致的行,最多次数不超过lg2(n)次。例如对于1000行的文本只需要lg2(1000)<=10次,即可找到差异行。最后提示用户,"第...行粘贴内容发生变化"。

综上所述,该方法在每次的粘贴过程,能够将粘贴后的内容和原内容通过文本哈希算法进行一致性比较,确保不会发生出错,如果发现不一致,会提示用户,降低文本复制粘贴过程的错误率。另外该方法采用的文本哈希算法能够在文本比较过程中较快地定位差异行。

实施例二:

一种防出错的文本数据复制粘贴系统,执行上述方法。

本发明实施例所提供的系统,为简要描述,实施例部分未提及之处,可参考前述实施例中相应内容。

实施例三:

一种计算机可读存储介质,所述计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行上述方法。

所述计算机可读存储介质可以是内部存储单元,例如终端的硬盘或内存。所述计算机可读存储介质也可以是所述终端的外部存储设备,例如所述终端上配备的插接式硬盘,智能存储卡(smartmediacard,smc),安全数字(securedigital,sd)卡,闪存卡(flashcard)等。进一步地,所述计算机可读存储介质还可以既包括所述终端的内部存储单元也包括外部存储设备。所述计算机可读存储介质用于存储所述计算机程序以及所述终端所需的其他程序和数据。所述计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的数据。

本发明实施例所提供的介质,为简要描述,实施例部分未提及之处,可参考前述实施例中相应内容。

最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围,其均应涵盖在本发明的权利要求和说明书的范围当中。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1