一种文档编辑方法技术

技术编号:39815727 阅读:13 留言:0更新日期:2023-12-22 19:34
本申请公开了一种文档编辑方法

【技术实现步骤摘要】
一种文档编辑方法、装置、设备及介质


[0001]本专利技术涉及文档编辑
,特别涉及一种文档编辑方法

装置

设备及介质


技术介绍

[0002]编写文档的时候经常会需要对文字设置相应属性,比如标题要加粗加黑,关键重要文本要用红色等等

现有的文本编辑器大多采用数组类似的直观的数据结构存储文本属性数据并且自然而然的会使用
std::string(
字符串
)
去处理文本流数据

优点:简单易懂,比较直观

但是对属性数据进行修改除了查找是
logN
的时间复杂度,其余操作包括增删节点和增删空间时间复杂度都是
O(N)
,而对文本数据插入和删除文本的时间复杂度也是
O(N)。
那在文本量巨大的时候,在增删文本的时候可能会导致用户体验问题

[0003]综上,如何在文本量巨大的文档编辑时,对属性数据编辑和文本流数据编辑时降低空间时间复杂度,使得即使在文本量巨大的文档内做各种操作,快速响应,不会影响用户体验是本领域有待解决的技术问题


技术实现思路

[0004]有鉴于此,本专利技术的目的在于提供一种文档编辑方法

装置

设备及介质,能够在文本量巨大的文档编辑时,对属性数据编辑和文本流数据编辑时降低空间时间复杂度,使得即使在文本量巨大的文档内做各种操作,快速响应,不会影响用户体验

其具体方案如下:
[0005]第一方面,本申请公开了一种文档编辑方法,包括:
[0006]基于文档编辑请求中的属性编辑信息确定待编辑文档的元数据,按照红黑树结构规则对所述元数据所在的属性节点坐标进行编辑,以获取编辑后的元数据;
[0007]基于所述文档编辑请求中的删除和
/
或插入字符信息从存储内存中确定待编辑字符所在的目标原始文本文件并将基于所述删除和
/
或插入字符信息执行的字符编辑操作后的目标字符信息存储至新增的字符编辑文件,并记录所述目标字符信息的目标起始位置信息和目标字符长度信息;
[0008]根据所述目标起始位置信息和所述目标字符长度信息从所述目标原始文本文件和所述字符编辑文件中确定出执行字符编辑操作后生成的拼接后字符串;
[0009]利用所述编辑后的元数据对所述拼接后字符串进行属性编辑,以获取编辑后的目标文档

[0010]可选的,所述基于文档编辑请求中的属性编辑信息确定待编辑文档的元数据之前,还包括:
[0011]接收文档编辑请求,并基于所述文档编辑请求确定待编辑文档,并将所述待编辑文档中的字符串信息和元数据加载至存储内存中

[0012]可选的,所述按照红黑树结构规则对所述元数据所在的属性节点坐标进行编辑,以获取编辑后的元数据,包括:
[0013]基于所述文档编辑请求中的属性编辑信息确定待编辑文档的红黑树结构的元数据;
[0014]确定当前待编辑元数据所在的红黑树结构的属性节点坐标;
[0015]按照所述属性节点坐标的当前节点坐标值减去比当前节点坐标值小的第一个父属性节点的属性节点坐标值的红黑树结构规则编辑对应的元数据的属性节点坐标,以获取属性节点坐标编辑后的元数据

[0016]可选的,所述基于所述文档编辑请求中的删除和
/
或插入字符信息从存储内存中确定待编辑字符所在的目标原始文本文件之前,还包括:
[0017]按照所述待编辑文档中文档内容中字符的字符编号顺序将所述待编辑文档的文档内容进行拆分,以获取若干文档片段,并将所述若干文档片段分别存储于各自对应的原始文本文件

[0018]可选的,所述基于所述文档编辑请求中的删除和
/
或插入字符信息从存储内存中确定待编辑字符所在的目标原始文本文件,包括:
[0019]基于所述文档编辑请求的删除和
/
或插入字符信息中的字符编号从存储内存的各个原始文本文件中确定待编辑字符所在的原始文本文件,以得到目标原始文本文件

[0020]可选的,所述将基于所述删除和
/
或插入字符信息执行的字符编辑操作后的目标字符信息存储至新增的字符编辑文件,并记录所述目标字符信息的目标起始位置信息和目标字符长度信息,包括:
[0021]基于所述删除字符信息执行对待编辑字符的字符删除操作,并将执行所述字符删除操作后的空字符信息存储至新增的字符编辑文件,并记录所述空字符信息的目标起始位置信息和目标字符长度信息;
[0022]基于所述插入字符信息执行对待编辑字符的字符插入操作,并将执行所述字符插入操作后的新插入字符信息存储至新增的字符编辑文件,并记录所述新插入字符信息的目标起始位置信息和目标字符长度信息

[0023]可选的,所述根据所述目标起始位置信息和所述目标字符长度信息从所述目标原始文本文件和所述字符编辑文件中确定出执行字符编辑操作后生成的拼接后字符串,包括:
[0024]从所述目标原始文本文件中获取未被编辑字符以及各所述未被编辑字符对应的起始位置信息和字符长度信息;
[0025]根据所述目标起始位置信息和所述目标字符长度信息

所述未被编辑字符对应的起始位置信息和字符长度信息,将所述字符编辑文件中的目标字符信息与未被编辑字符进行字符串拼接,以获取执行字符编辑操作后生成的拼接后字符串

[0026]第二方面,本申请公开了一种文档编辑装置,包括:
[0027]元数据编辑模块,用于基于文档编辑请求中的属性编辑信息确定待编辑文档的元数据,按照红黑树结构规则对所述元数据所在的属性节点坐标进行编辑,以获取编辑后的元数据;
[0028]字符编辑模块,用于基于所述文档编辑请求中的删除和
/
或插入字符信息从存储内存中确定待编辑字符所在的目标原始文本文件并将基于所述删除和
/
或插入字符信息执行的字符编辑操作后的目标字符信息存储至新增的字符编辑文件,并记录所述目标字符信
息的目标起始位置信息和目标字符长度信息;
[0029]字符拼接模块,用于根据所述目标起始位置信息和所述目标字符长度信息从所述目标原始文本文件和所述字符编辑文件中确定出执行字符编辑操作后生成的拼接后字符串;
[0030]文档编辑模块,用于利用所述编辑后的元数据对所述拼接后字符串进行属性编辑,以获取编辑后的目标文档

[0031]第三方面,本申请公开了一种电子设备,包括:
[0032]存储器,用于保存计算机程序;
[0033]处理器,用于执行所述计算机程序,以实现前述公开的文档编辑方法的步骤

[0034]第四方面,本申请公开了一种计算机可读存本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
一种文档编辑方法,其特征在于,包括:基于文档编辑请求中的属性编辑信息确定待编辑文档的元数据,按照红黑树结构规则对所述元数据所在的属性节点坐标进行编辑,以获取编辑后的元数据;基于所述文档编辑请求中的删除和
/
或插入字符信息从存储内存中确定待编辑字符所在的目标原始文本文件并将基于所述删除和
/
或插入字符信息执行的字符编辑操作后的目标字符信息存储至新增的字符编辑文件,并记录所述目标字符信息的目标起始位置信息和目标字符长度信息;根据所述目标起始位置信息和所述目标字符长度信息从所述目标原始文本文件和所述字符编辑文件中确定出执行字符编辑操作后生成的拼接后字符串;利用所述编辑后的元数据对所述拼接后字符串进行属性编辑,以获取编辑后的目标文档
。2.
根据权利要求1所述的文档编辑方法,其特征在于,所述基于文档编辑请求中的属性编辑信息确定待编辑文档的元数据之前,还包括:接收文档编辑请求,并基于所述文档编辑请求确定待编辑文档,并将所述待编辑文档中的字符串信息和元数据加载至存储内存中
。3.
根据权利要求1所述的文档编辑方法,其特征在于,所述按照红黑树结构规则对所述元数据所在的属性节点坐标进行编辑,以获取编辑后的元数据,包括:基于所述文档编辑请求中的属性编辑信息确定待编辑文档的红黑树结构的元数据;确定当前待编辑元数据所在的红黑树结构的属性节点坐标;按照所述属性节点坐标的当前节点坐标值减去比当前节点坐标值小的第一个父属性节点的属性节点坐标值的红黑树结构规则编辑对应的元数据的属性节点坐标,以获取属性节点坐标编辑后的元数据
。4.
根据权利要求1所述的文档编辑方法,其特征在于,所述基于所述文档编辑请求中的删除和
/
或插入字符信息从存储内存中确定待编辑字符所在的目标原始文本文件之前,还包括:按照所述待编辑文档中文档内容中字符的字符编号顺序将所述待编辑文档的文档内容进行拆分,以获取若干文档片段,并将所述若干文档片段分别存储于各自对应的原始文本文件
。5.
根据权利要求4所述的文档编辑方法,其特征在于,所述基于所述文档编辑请求中的删除和
/
或插入字符信息从存储内存中确定待编辑字符所在的目标原始文本文件,包括:基于所述文档编辑请求的删除和
/
或插入字符信息中的字符编号从存储内存的各个原始文本文件中确定待编辑字符所在的原始文本文件,以得到目标原始文本文件
。6.
根据权利要求1所述的文档编辑方法,其特征在于,所述将基于...

【专利技术属性】
技术研发人员:黄元李尼科万重桂张锐敏易润泽黄长海
申请(专利权)人:湖南长银五八消费金融股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1