CN104717239A - 共享文件的协同编辑方法、服务器及用户端 - Google Patents
共享文件的协同编辑方法、服务器及用户端 Download PDFInfo
- Publication number
- CN104717239A CN104717239A CN201310680869.0A CN201310680869A CN104717239A CN 104717239 A CN104717239 A CN 104717239A CN 201310680869 A CN201310680869 A CN 201310680869A CN 104717239 A CN104717239 A CN 104717239A
- Authority
- CN
- China
- Prior art keywords
- file
- shared file
- user side
- editing
- edit
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
- H04L67/025—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP] for remote control or remote monitoring of applications
Abstract
本发明公开了一种共享文件的协同编辑方法、服务器及用户端,所述方法包括步骤根据共享文件来源,为多个用户端分配对共享文件的编辑权限;建立一个栈表;获取所述多个用户端的共享文件编辑信息,将所述共享文件编辑信息逐条存储于所述栈表中;通过获取用户端的共享文件编辑信息并存储在服务器生成的栈表中,存储的仅为对共享文件的编辑内容而非整个文件,极大的节省了存储资源;此外,通过对不同用户端分配不同的共享文件编辑权限,实现了多用户端在各自的权限下对共享文件的协同编辑,避免了频繁出现冲突编辑的问题。
Description
技术领域
本发明涉及通信技术领域,特别是指一种共享文件的协同编辑方法、服务器及用户端。
背景技术
随着数据通信和网络存储技术的不断发展,人们可以将本地的文件共享到网络端节省本地存储空间,还能够方便的在其他设备上进行后续的编辑工作;网络端的共享文件也可以供其他用户读取和编辑。上述对于共享文件的应用过程中,共享文件在服务器和多个用户端间传输、存储将大量占用存储资源;此外,目前也难以实现多个用户端同时对于一个存储于网络端的服务器上的共享文件进行编辑,如果简单的使共享文件允许多个用户端同时编辑,则可能频繁的出现冲突编辑,即不能实现共享文件的协同编辑问题。
发明内容
有鉴于此,本发明的目的在于提出一种共享文件的协同编辑方法、服务器及用户端,能够实现多用户协同编辑共享文件,同时节省网络存储和传输资源。
基于上述目的本发明提供的一种共享文件的协同编辑方法,包括以下步骤:
根据共享文件来源,为多个用户端分配对共享文件的编辑权限;
建立一个栈表;
获取所述多个用户端的共享文件编辑信息,将所述共享文件编辑信息逐条存储于所述栈表中。
优选的,为多个用户端分配对共享文件的编辑权限的步骤包括:为上传该共享文件的用户端分配全部编辑权限,为其他用户端分配部分编辑权限。
可选的,所述共享文件的可编辑内容包括:文件级、页面级和对象级;全部编辑权限包括对文件级、页面级和对象级的编辑权限,部分编辑权限包括对页面级和/或对象级的编辑权限。
优选的,所述栈表包括多个顺序排列的表项,每个所述表项用于存储一条共享文件编辑信息。
优选的,还包括步骤:检索获取的所述多个用户端的共享文件编辑信息中是否存在冲突编辑;若是,则放弃存储所有冲突编辑,并向用户端发出提示;若否,则将所述共享文件编辑信息存储于所述栈表中。
优选的,还包括步骤:根据用户端的请求,将所述栈表发送至用户端。
优选的,其特征在于,当首次收到用户端发出的请求时,向请求用户端发送所述共享文件。
优选的,还包括步骤:向每个用户端发送所有其他用户端的编辑状态信息。
优选的,当对共享文件的编辑内容为插入媒体文件时,获取并存储的所述共享文件编辑信息仅包括所述媒体文件的存储地址。
优选的,当所述媒体文件的存储地址为本地地址时,获取并保存所述媒体文件。
优选的,获取并保存所述媒体文件的步骤还包括:判断所述媒体文件的大小是否超过预设阈值;若是,则先对所述媒体文件进行压缩再获取并保存;若否,则直接获取并保存所述媒体文件。
本发明还提供了一种服务器,包括:
权限分配模块,用于根据共享文件来源,为多个用户端分配对共享文件的编辑权限;
创建模块,用于建立一个栈表;
获取模块,用于获取所述多个用户端的共享文件编辑信息,将所述共享文件编辑信息逐条存储于所述栈表中。
优选的,所述权限分配模块进一步用于为上传该共享文件的用户端分配全部编辑权限,为其他用户端分配部分编辑权限。
可选的,所述共享文件的可编辑内容包括:文件级、页面级和对象级;全部编辑权限包括对文件级、页面级和对象级的编辑权限,部分编辑权限包括对页面级和/或对象级的编辑权限。
优选的,所述栈表包括多个顺序排列的表项,每个所述表项用于存储一条共享文件编辑信息。
优选的,还包括:提示模块,用于在所述多个用户端的共享文件编辑信息中存在冲突编辑时,并向用户端发出提示。
优选的,还包括:发送模块,用于根据用户端的请求,将所述栈表发送至用户端。
优选的,所述发送模块还用于当首次收到用户端发出的请求时,向请求用户端发送所述共享文件。
优选的,还包括:编辑状态共享模块,用于向每个用户端发送所有其他用户端的编辑状态信息。
优选的,当对共享文件的编辑内容为插入媒体文件时,所述获取模块获取并存储的所述共享文件编辑信息仅包括所述媒体文件的存储地址。
优选的,当所述媒体文件的存储地址为本地地址时,所述获取模块还用于获取并保存所述媒体文件。
优选的,还包括压缩模块,用于当所述媒体文件的大小超过预设阈值时,对所述媒体文件进行压缩。
本发明还提供了一种共享文件的协同编辑方法,包括以下步骤:
获取服务器分配的权限;
获取用户端的共享文件编辑信息;
将所述共享文件编辑信息顺序逐条上传至所述服务器。
优选的,编辑本用户端上传的共享文件时,获取服务器分配的全部编辑权限;编辑其他用户端上传的共享文件时,获取服务器分配的部分编辑权限。
可选的,其特征在于,所述共享文件的可编辑内容包括:文件级、页面级和对象级;全部编辑权限包括对文件级、页面级和对象级的编辑权限,部分编辑权限包括对页面级和/或对象级的编辑权限。
优选的,还包括步骤:向服务器发送请求,并接收服务器返回的栈表;所述栈表存储了所有的共享文件编辑信息。
优选的,首次向服务器发送请求时,接收服务器返回的共享文件。
优选的,还包括步骤:接收服务器发送的所有其他用户端的编辑状态信息并显示。
优选的,当对共享文件的编辑内容为插入媒体文件时,获取的所述共享文件编辑信息仅包括所述媒体文件的存储地址。
优选的,当所述媒体文件的存储地址为本地地址时,将所述媒体文件上传至服务器。
优选的,上传所述媒体文件的步骤还包括:判断所述媒体文件的大小是否超过预设阈值;若是,则先对所述媒体文件进行压缩再上传;若否,则直接上传所述媒体文件。
本发明还提供了一种用户端,其特征在于,包括:
权限获取模块,用于获取服务器分配的权限;
获取模块,用于获取用户端的共享文件编辑信息;
上传模块,用于将所述共享文件编辑信息顺序逐条上传至所述服务器。
优选的,编辑本用户端上传的共享文件时,所述权限获取模块获取服务器分配的全部编辑权限;编辑其他用户端上传的共享文件时,所述权限获取模块获取服务器分配的部分编辑权限。
可选的,所述共享文件的可编辑内容包括:文件级、页面级和对象级;全部编辑权限包括对文件级、页面级和对象级的编辑权限,部分编辑权限包括对页面级和/或对象级的编辑权限。
优选的,还包括:接收模块,用于向服务器发送请求,并接收服务器返回的栈表;所述栈表存储了所有的共享文件编辑信息。
优选的,所述接收模块还用于首次向服务器发送请求时,接收服务器返回的共享文件。
优选的,还包括:编辑状态显示模块,用于接收服务器发送的所有其他用户端的编辑状态信息并显示。
优选的,当对共享文件的编辑内容为插入媒体文件时,所述获取模块获取的所述共享文件编辑信息仅包括所述媒体文件的存储地址。
优选的,当所述媒体文件的存储地址为本地地址时,所述上传模块还用于将所述媒体文件上传至服务器。
优选的,还包括压缩模块,用于当所述媒体文件的大小超过预设阈值时,对所述媒体文件进行压缩。
从上面所述可以看出,本发明提供的共享文件的协同编辑方法、服务器及用户端,通过获取用户端的共享文件编辑信息并存储在服务器生成的栈表中,存储的仅为对共享文件的编辑内容而非整个文件,极大的节省了存储资源;此外,通过对不同用户端分配不同的共享文件编辑权限,实现了多用户端在各自的权限下对共享文件的协同编辑,避免了频繁出现冲突编辑的问题。
附图说明
图1为本发明实施例的共享文件的协同编辑方法流程图;
图2为本发明实施例的服务器结构示意图;
图3为本发明实施例的另一共享文件的协同编辑方法流程图;
图4为本发明实施例的用户端结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明进一步详细说明。
本发明实施例提供了一种共享文件的协同编辑方法,参考图1,为本发明实施例的共享文件的协同编辑方法流程图。
本实施例所述的共享文件的协同编辑方法,包括以下步骤:
步骤101:根据共享文件来源,为多个用户端分配对共享文件的编辑权限;
进一步的,对共享文件的编辑权限分配的方法为:为上传该共享文件的用户端分配全部编辑权限,为其他用户端分配部分编辑权限。即一个用户端对于其自己上传的共享文件享有全部编辑权限,对于其他用户端上传的共享文件具有部分编辑权限。
步骤102:建立一个栈表;
所述栈表包括多个顺序排列的表项,每个所述表项用于存储一条共享文件编辑信息。
步骤103:获取所述多个用户端的共享文件编辑信息,将所述共享文件编辑信息逐条存储于所述栈表中。
所述的共享文件编辑信息即对共享文件编辑内容的记录信息。所述的共享文件是常规的如word文档、ppt演示文档、图片等等。以word文档为例,对其的编辑信息被逐条记录,如:1.添加文本、2.设定文本格式、3.修改文本内容、4.插入图片。上述的每一条共享文件编辑信息被存储于栈表(主栈表、子栈表或执行栈表,以下统称为栈表)的一个表项中,多条共享文件编辑信息根据操作顺序或是获取顺序存储到栈表中顺序排列设置的多个表项中。经过编辑的文件的存储形式不是一个单独的文件,而是首次上传的共享文件+栈表。
栈表中存储的所述共享文件编辑信息的一种可选实施方式为json格式的字符串。共享文件编辑信息都存储于栈表中,因此首次上传的共享文件始终保持不变,且编辑过程中的栈表的内容始终存储在内存中,以保证较快的数据存储速度;而编辑后保存的新文件则为首次上传的共享文件+栈表,此时,栈表从内存中转为存储在外存中的xml格式的文件。
本实施例中所述被编辑的共享文件可以是类似PPT的课件类型的文件,其中可包括多个页面(如同PPT中的每一页幻灯片),所述的共享文件的可编辑内容包括:文件级、页面级和对象级。相应的,本实施例中所述的全部编辑权限包括对文件级、页面级和对象级的编辑权限,部分编辑权限包括对页面级和/或对象级的编辑权限。
下面以json格式的字符串为例,举例描述所述三层级别对应的字符串示例:
1、文件级别
新建文件:type="IP"Version="0"Content="ID='1234567890'Name='2013-10-28-9-49-11'";
删除文件:type="DP"Version="1"Content="ID='1234567890'";
更新文件:
type="UP"Version="2"Content="ID='1234567890'ActiveSlide='9876543210'";
2、页面级别
新建页面:type="IS"Version="3"Content="ID='9876543210'Color='white'";
删除页面:type="DS"Version="4"Content="ID='9876543210'";
更新页面:type="US"Version="5"Content="ID='9876543210'Color='red'";
3、对象级别
新建对象:
type="II"Version="6"SlideID="9876543210"Content="ID='3216549870'DataX='123,0,1,0,1'DataY='234,0,1,0,1'";
删除对象:
type="DI"Version="7"SlideID="9876543210"Content="ID='3216549870'";更新对象:
type="UI"Version="8"SlideID="9876543210"Content="ID='3216549870'Width='4'"。
针对不同层级的编辑对象,为多个用户端分配不同的编辑权限,各个用户端在同时编辑共享文件,受到编辑权限的限制,将会降低频繁出现冲突编辑的情况。
用户端通过本发明实施例中建立的栈表能够读取、下载所述共享文件,根据用户端的请求,将所述栈表发送至用户端,用户端在读取共享文件时,先后读取共享文件和栈表,根据栈表存储的编辑信息,在共享文件上完成相应编辑后生成的文件即为要读取的编辑后的文件。以共享文件为基础,在进行传送、复制时,仅需传送、复制该栈表,节约了存储和传输资源。
对于非本用户端上传的共享文件,当首次收到用户端发出的请求时,向请求用户端发送所述共享文件,该用户端通过收到的共享文件结合同时收到的存储有所述共享文件编辑信息的栈表,即可读取编辑后的共享文件。
作为一个实施例,本实施例的方法还包括步骤:检索获取的所述多个用户端的共享文件编辑信息中是否存在冲突编辑;若是,则放弃存储所有冲突编辑,并向用户端发出提示;若否,则将所述共享文件编辑信息存储于所述栈表中。
多个用户端在对共享文件协同编辑过程中,特别是多个具有部分编辑权限的用户端之间的共享文件编辑信息仍有可能存在冲突编辑,如一个用户端对一个页面内容进行更新,而另一用户端删除了该页面。为了避免上述情况发生,对获取的共享文件编辑信息进行检索,在检索到多个用户端的共享文件编辑信息存在冲突编辑时,放弃保存这些编辑信息,同时向这些用户端发出提示,令所述的用户端得知当前的编辑信息存储情况,其可以选择重做相关的编辑内容或是放弃对原编辑对象的编辑。
作为另一个实施例,所述的共享文件的协同编辑方法还包括步骤:向每个用户端发送所有其他用户端的编辑状态信息。所述的编辑状态信息包括用户端当前是否正在进行协同编辑以及其编辑权限标识,用于令任一用户端了解当前那些用户端在进行协同编辑和这些用户端各自的编辑权限。
在本发明的共享文件的协同编辑方法实施例中,对于存储于栈表中的共享文件编辑信息,当对共享文件的编辑内容为插入媒体文件时,获取并存储的所述共享文件编辑信息仅包括所述媒体文件的存储地址。所述的媒体文件一般包括图片、音频、视频,媒体文件一般占用存储空间较大,在栈表中存储编辑信息时,如果将媒体文件直接存储则会使栈表过大,不利于节省存储空间,所以在本发明实施例中,共享文件编辑仅存储媒体文件的存储地址,读取执行栈表时,根据存储地址找到该媒体文件并完成编辑。
编辑共享文件所使用的媒体文件可能存储在本地的本地文件,也可能是网络中的网络文件。若媒体文件是网络文件,在读取执行栈表时,根据存储地址找到网络上的该媒体文件,完成编辑;若媒体文件是本地文件,则获取并保存所述媒体文件,使得其他用户端请求读取共享文件时,可以正常的读取栈表并完成栈表存储的编辑。
进一步的,为防止媒体文件太大而占用过多的存储空间,获取并保存所述媒体文件的步骤还包括:判断所述媒体文件的大小是否超过预设阈值;若是,则先对所述媒体文件进行压缩再获取并保存;若否,则直接获取并保存所述媒体文件。预先设定限制获取的媒体文件的大小的阈值,如阈值为300MB,即当要获取大于300MB的媒体文件时,需要先进行压缩。相应的,在读取存储由压缩过的媒体文件的相关栈表表项时,先对该媒体文件进行解压缩,再完成将媒体文件插入共享文件的编辑动作。
本发明还提供了一种服务器,参考图2,为本发明实施例的服务器结构示意图。
所述的服务器包括:
权限分配模块201,用于根据共享文件来源,为多个用户端分配对共享文件的编辑权限;
创建模块202,用于建立一个栈表;
获取模块203,用于获取所述多个用户端的共享文件编辑信息,将所述共享文件编辑信息逐条存储于所述栈表中。
其中,所述权限分配模块201进一步用于为上传该共享文件的用户端分配全部编辑权限,为其他用户端分配部分编辑权限。具体的,所述共享文件的可编辑内容包括:文件级、页面级和对象级;全部编辑权限包括对文件级、页面级和对象级的编辑权限,部分编辑权限包括对页面级和/或对象级的编辑权限。
创建模块202建立的栈表用于存储共享文件编辑信息,所述栈表包括多个顺序排列的表项,每个所述表项用于存储一条共享文件编辑信息。
进一步的,本实施例的服务器还包括提示模块204,用于在所述多个用户端的共享文件编辑信息中存在冲突编辑时,并向用户端发出提示。
用户端需要读取或下载共享文件时,需要使用服务器上存储的栈表,本实施例的服务器还包括发送模块205,用于根据用户端的请求,将所述栈表发送至用户端。当用户端请求读取或下载非其上传的共享文件时,还要用到服务器存储的该共享文件,则所述发送模块205还用于当首次收到用户端发出的请求时,向请求用户端发送所述共享文件。
作为一个实施例,本发明的服务器还包括编辑状态共享模块207,用于向每个用户端发送所有其他用户端的编辑状态信息。能够使任一用户端了解当前那些用户端在进行协同编辑和这些用户端各自的编辑权限。
进一步的,当对共享文件的编辑内容为插入媒体文件时,所述获取模块获203获取并存储的所述共享文件编辑信息仅包括所述媒体文件的存储地址。其中,当媒体文件存储在网络上,即其存储地址为网络地址时,则直接从网络上获取该媒体文件;当媒体文件存储在本地,栈表中存储的媒体文件的存储地址为本地地址时,获取模块203还用于获取并保存所述媒体文件。将媒体文件保存在服务器上,以供其他用户端下载或读取共享文件时使用。
本实施例所述的服务器中,还包括压缩模块206,用于当所述媒体文件的大小超过预设阈值时,对所述媒体文件进行压缩,进一步节约存储空间,且所述压缩模块306使用常用的压缩协议进行压缩,在服务器端和任意用户端都可以进行压缩、解压,同时,在服务器和用户端的文件传输过程中,压缩过的文件可以节省网络传输资源。
本发明实施例还提供了一种共享文件的协同编辑方法,参考图3,为本发明实施例的另一共享文件的协同编辑方法流程图。
本实施例所述的共享文件的协同编辑方法,包括以下步骤:
步骤301:获取服务器分配的权限;
具体的,编辑本用户端上传的共享文件时,获取服务器分配的全部编辑权限;编辑其他用户端上传的共享文件时,获取服务器分配的部分编辑权限。本实施例中,所述共享文件的可编辑内容包括:文件级、页面级和对象级;全部编辑权限包括对文件级、页面级和对象级的编辑权限,部分编辑权限包括对页面级和/或对象级的编辑权限。
步骤302:获取用户端的共享文件编辑信息;
所述的共享文件编辑信息包括对共享文件各个层级,即文件级、页面级、对象级的各种编辑操作,包括但不限于:文件的重命名、页面数量的增减、页面属性的改变、对象数量的增减,对象属性的改变等等。
步骤303:将所述共享文件编辑信息顺序逐条上传至所述服务器。
以一次对共享文件的编辑操作记录为一条共享文件编辑信息,将先后获取的数条共享文件编辑信息逐条上传至服务。在服务器端,以上传的次数为分隔,将首次上传的对于一个共享文件的数条共享文件编辑信息逐条存储于包括多个顺序排列的表项的栈表中。
进一步的,实现共享文件的读取、下载,还包括步骤:向服务器发送请求,并接收服务器返回的栈表;所述栈表存储了所有的共享文件编辑信息。在请求读取、下载其他用户端上传的共享文件时,需要使用服务器存储的共享文件,则在首次向服务器发送请求时,接收服务器返回的该共享文件。
作为一个实施例,所述的共享文件的协同编辑方法还包括步骤:接收服务器发送的所有其他用户端的编辑状态信息并显示。所述的其他用户端的编辑状态信息包括,当前正在对共享文件进行编辑的所有其他用户端标识以及这些用户端各自的编辑权限标识,同时将上述的内容实时地显示,使得该用户端对其当前编辑的共享文件的协同编辑状态有清楚的掌握。
获取共享文件编辑信息的过程中,当对共享文件的编辑内容为插入媒体文件时,获取的所述共享文件编辑信息仅包括所述媒体文件的存储地址。其中,当所述媒体文件的存储地址为本地地址时,将所述媒体文件上传至服务器。进一步的,在上传所述媒体文件时,首先判断所述媒体文件的大小是否超过预设阈值;若是,则先对所述媒体文件进行压缩再上传;若否,则直接上传所述媒体文件。
本发明实施例还提供了一种用户端,参考图4,为本发明实施例的用户端结构示意图。
本实施例的用户端,包括:
权限获取模块401,用于获取服务器分配的权限;
具体的,编辑本用户端上传的共享文件时,所述权限获取模块401获取服务器分配的全部编辑权限;编辑其他用户端上传的共享文件时,所述权限获取模块401获取服务器分配的部分编辑权限。其中,所述共享文件的可编辑内容包括:文件级、页面级和对象级;全部编辑权限包括对文件级、页面级和对象级的编辑权限,部分编辑权限包括对页面级和/或对象级的编辑权限。
获取模块402,用于获取用户端的共享文件编辑信息;
上传模块403,用于将所述共享文件编辑信息顺序逐条上传至所述服务器。
为实现共享文件的读取和下载,本实施例的用户端还包括接收模块404,用于向服务器发送请求,并接收服务器返回的栈表;所述栈表存储了所有的共享文件编辑信息。进一步的,所述接收模块404还用于首次向服务器发送请求时,接收服务器返回的共享文件。
作为一个实施例,所述的用户端还包括:编辑状态显示模块405,用于接收服务器发送的所有其他用户端的编辑状态信息并显示。
当对共享文件的编辑内容为插入媒体文件时,所述获取模块402获取的所述共享文件编辑信息仅包括所述媒体文件的存储地址。当所述媒体文件的存储地址为本地地址时,所述上传模块403还用于将所述媒体文件上传至服务器。进一步为了节省服务器的存储资源以及网络传输资源,本实施例的用户端还包括压缩模块406,用于当所述媒体文件的大小超过预设阈值时,对所述媒体文件进行压缩,上传模块403将压缩过的媒体文件上传至服务器。
所属领域的普通技术人员应当理解:以上所述仅为本发明的具体实施例而已,并不用于限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (40)
1.一种共享文件的协同编辑方法,其特征在于,包括以下步骤:
根据共享文件来源,为多个用户端分配对共享文件的编辑权限;
建立一个栈表;
获取所述多个用户端的共享文件编辑信息,将所述共享文件编辑信息逐条存储于所述栈表中。
2.根据权利要求1所述的方法,其特征在于,为多个用户端分配对共享文件的编辑权限的步骤包括:为上传该共享文件的用户端分配全部编辑权限,为其他用户端分配部分编辑权限。
3.根据权利要求2所述的方法,其特征在于,所述共享文件的可编辑内容包括:文件级、页面级和对象级;全部编辑权限包括对文件级、页面级和对象级的编辑权限,部分编辑权限包括对页面级和/或对象级的编辑权限。
4.根据权利要求1所述的方法,其特征在于,所述栈表包括多个顺序排列的表项,每个所述表项用于存储一条共享文件编辑信息。
5.根据权利要求1所述的方法,其特征在于,还包括步骤:检索获取的所述多个用户端的共享文件编辑信息中是否存在冲突编辑;若是,则放弃存储所有冲突编辑,并向用户端发出提示;若否,则将所述共享文件编辑信息存储于所述栈表中。
6.根据权利要求1所述的方法,其特征在于,还包括步骤:根据用户端的请求,将所述栈表发送至用户端。
7.根据权利要求6所述的方法,其特征在于,当首次收到用户端发出的请求时,向请求用户端发送所述共享文件。
8.根据权利要求1所述的方法,其特征在于,还包括步骤:向每个用户端发送所有其他用户端的编辑状态信息。
9.根据权利要求1所述的方法,其特征在于,当对共享文件的编辑内容为插入媒体文件时,获取并存储的所述共享文件编辑信息仅包括所述媒体文件的存储地址。
10.根据权利要求9所述的方法,其特征在于,当所述媒体文件的存储地址为本地地址时,获取并保存所述媒体文件。
11.根据权利要求10所述的方法,其特征在于,获取并保存所述媒体文件的步骤还包括:判断所述媒体文件的大小是否超过预设阈值;若是,则先对所述媒体文件进行压缩再获取并保存;若否,则直接获取并保存所述媒体文件。
12.一种服务器,其特征在于,包括:
权限分配模块,用于根据共享文件来源,为多个用户端分配对共享文件的编辑权限;
创建模块,用于建立一个栈表;
获取模块,用于获取所述多个用户端的共享文件编辑信息,将所述共享文件编辑信息逐条存储于所述栈表中。
13.根据权利要求12所述的服务器,其特征在于,所述权限分配模块进一步用于为上传该共享文件的用户端分配全部编辑权限,为其他用户端分配部分编辑权限。
14.根据权利要求13所述的服务器,其特征在于,所述共享文件的可编辑内容包括:文件级、页面级和对象级;全部编辑权限包括对文件级、页面级和对象级的编辑权限,部分编辑权限包括对页面级和/或对象级的编辑权限。
15.根据权利要求12所述的服务器,其特征在于,所述栈表包括多个顺序排列的表项,每个所述表项用于存储一条共享文件编辑信息。
16.根据权利要求12所述的服务器,其特征在于,还包括:提示模块,用于在所述多个用户端的共享文件编辑信息中存在冲突编辑时,并向用户端发出提示。
17.根据权利要求12所述的服务器,其特征在于,还包括:发送模块,用于根据用户端的请求,将所述栈表发送至用户端。
18.根据权利要求17所述的服务器,其特征在于,所述发送模块还用于当首次收到用户端发出的请求时,向请求用户端发送所述共享文件。
19.根据权利要求12所述的服务器,其特征在于,还包括:编辑状态共享模块,用于向每个用户端发送所有其他用户端的编辑状态信息。
20.根据权利要求12所述的服务器,其特征在于,当对共享文件的编辑内容为插入媒体文件时,所述获取模块获取并存储的所述共享文件编辑信息仅包括所述媒体文件的存储地址。
21.根据权利要求20所述的服务器,其特征在于,当所述媒体文件的存储地址为本地地址时,所述获取模块还用于获取并保存所述媒体文件。
22.根据权利要求21所述的服务器,其特征在于,还包括压缩模块,用于当所述媒体文件的大小超过预设阈值时,对所述媒体文件进行压缩。
23.一种共享文件的协同编辑方法,其特征在于,包括以下步骤:
获取服务器分配的权限;
获取用户端的共享文件编辑信息;
将所述共享文件编辑信息顺序逐条上传至所述服务器。
24.根据权利要求23所述的方法,其特征在于,编辑本用户端上传的共享文件时,获取服务器分配的全部编辑权限;编辑其他用户端上传的共享文件时,获取服务器分配的部分编辑权限。
25.根据权利要求24所述的方法,其特征在于,所述共享文件的可编辑内容包括:文件级、页面级和对象级;全部编辑权限包括对文件级、页面级和对象级的编辑权限,部分编辑权限包括对页面级和/或对象级的编辑权限。
26.根据权利要求23所述的方法,其特征在于,还包括步骤:向服务器发送请求,并接收服务器返回的栈表;所述栈表存储了所有的共享文件编辑信息。
27.根据权利要求26所述的方法,其特征在于,首次向服务器发送请求时,接收服务器返回的共享文件。
28.根据权利要求23所述的方法,其特征在于,还包括步骤:接收服务器发送的所有其他用户端的编辑状态信息并显示。
29.根据权利要求23所述的方法,其特征在于,当对共享文件的编辑内容为插入媒体文件时,获取的所述共享文件编辑信息仅包括所述媒体文件的存储地址。
30.根据权利要求29所述的方法,其特征在于,当所述媒体文件的存储地址为本地地址时,将所述媒体文件上传至服务器。
31.根据权利要求30所述的方法,其特征在于,上传所述媒体文件的步骤还包括:判断所述媒体文件的大小是否超过预设阈值;若是,则先对所述媒体文件进行压缩再上传;若否,则直接上传所述媒体文件。
32.一种用户端,其特征在于,包括:
权限获取模块,用于获取服务器分配的权限;
获取模块,用于获取用户端的共享文件编辑信息;
上传模块,用于将所述共享文件编辑信息顺序逐条上传至所述服务器。
33.根据权利要求32所述的用户端,其特征在于,编辑本用户端上传的共享文件时,所述权限获取模块获取服务器分配的全部编辑权限;编辑其他用户端上传的共享文件时,所述权限获取模块获取服务器分配的部分编辑权限。
34.根据权利要求33所述的用户端,其特征在于,所述共享文件的可编辑内容包括:文件级、页面级和对象级;全部编辑权限包括对文件级、页面级和对象级的编辑权限,部分编辑权限包括对页面级和/或对象级的编辑权限。
35.根据权利要求32所述的用户端,其特征在于,还包括:接收模块,用于向服务器发送请求,并接收服务器返回的栈表;所述栈表存储了所有的共享文件编辑信息。
36.根据权利要求35所述的用户端,其特征在于,所述接收模块还用于首次向服务器发送请求时,接收服务器返回的共享文件。
37.根据权利要求32所述的用户端,其特征在于,还包括:编辑状态显示模块,用于接收服务器发送的所有其他用户端的编辑状态信息并显示。
38.根据权利要求32所述的用户端,其特征在于,当对共享文件的编辑内容为插入媒体文件时,所述获取模块获取的所述共享文件编辑信息仅包括所述媒体文件的存储地址。
39.根据权利要求38所述的用户端,其特征在于,当所述媒体文件的存储地址为本地地址时,所述上传模块还用于将所述媒体文件上传至服务器。
40.根据权利要求39所述的用户端,其特征在于,还包括压缩模块,用于当所述媒体文件的大小超过预设阈值时,对所述媒体文件进行压缩。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310680869.0A CN104717239A (zh) | 2013-12-12 | 2013-12-12 | 共享文件的协同编辑方法、服务器及用户端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310680869.0A CN104717239A (zh) | 2013-12-12 | 2013-12-12 | 共享文件的协同编辑方法、服务器及用户端 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104717239A true CN104717239A (zh) | 2015-06-17 |
Family
ID=53416199
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310680869.0A Pending CN104717239A (zh) | 2013-12-12 | 2013-12-12 | 共享文件的协同编辑方法、服务器及用户端 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104717239A (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106708941A (zh) * | 2016-11-24 | 2017-05-24 | 厦门亿力吉奥信息科技有限公司 | 电网多任务在线协同编辑方法 |
CN107342996A (zh) * | 2017-07-03 | 2017-11-10 | 天脉聚源(北京)传媒科技有限公司 | 一种不同权限用户在同一系统中交互的方法及装置 |
CN107682403A (zh) * | 2017-09-07 | 2018-02-09 | 百度在线网络技术(北京)有限公司 | 一种用于更新ugc的方法、装置和设备 |
CN107992461A (zh) * | 2017-11-23 | 2018-05-04 | 郑州云海信息技术有限公司 | 一种多人同时编辑同一文档的装置及方法 |
CN110110307A (zh) * | 2019-04-19 | 2019-08-09 | 国网天津市电力公司 | 一种基于云技术的工程前期信息编辑共享系统 |
CN110636046A (zh) * | 2019-08-20 | 2019-12-31 | 视联动力信息技术股份有限公司 | 一种协同处理文件的方法、服务器、电子设备及存储介质 |
CN110807302A (zh) * | 2019-11-04 | 2020-02-18 | 北京联想协同科技有限公司 | 文档协同编辑方法及装置、终端和计算机可读存储介质 |
CN110941425A (zh) * | 2018-09-25 | 2020-03-31 | 北京龙码科技有限公司 | 图形化协同编程方法、装置和系统、服务器及存储介质 |
CN111277905A (zh) * | 2020-03-09 | 2020-06-12 | 新华智云科技有限公司 | 一种在线协同视频编辑方法及装置 |
CN112016280A (zh) * | 2020-10-16 | 2020-12-01 | 北京联想协同科技有限公司 | 一种文件编辑方法、装置及计算机可读介质 |
CN112258140A (zh) * | 2020-09-16 | 2021-01-22 | 北京仿真中心 | 一种基于权限控制的文档在线编辑系统和方法 |
CN114528816A (zh) * | 2022-01-27 | 2022-05-24 | 北京飞书科技有限公司 | 协同编辑的信息展示方法、装置、电子设备和可读介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102077198A (zh) * | 2008-06-25 | 2011-05-25 | 微软公司 | 结构化共同创作 |
CN102999482A (zh) * | 2011-12-12 | 2013-03-27 | 微软公司 | 用于管理协作文档的技术 |
CN103020026A (zh) * | 2012-11-15 | 2013-04-03 | 无锡永中软件有限公司 | 协同文档处理系统及方法 |
-
2013
- 2013-12-12 CN CN201310680869.0A patent/CN104717239A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102077198A (zh) * | 2008-06-25 | 2011-05-25 | 微软公司 | 结构化共同创作 |
CN102999482A (zh) * | 2011-12-12 | 2013-03-27 | 微软公司 | 用于管理协作文档的技术 |
CN103020026A (zh) * | 2012-11-15 | 2013-04-03 | 无锡永中软件有限公司 | 协同文档处理系统及方法 |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106708941B (zh) * | 2016-11-24 | 2019-07-30 | 厦门亿力吉奥信息科技有限公司 | 电网多任务在线协同编辑方法 |
CN106708941A (zh) * | 2016-11-24 | 2017-05-24 | 厦门亿力吉奥信息科技有限公司 | 电网多任务在线协同编辑方法 |
CN107342996A (zh) * | 2017-07-03 | 2017-11-10 | 天脉聚源(北京)传媒科技有限公司 | 一种不同权限用户在同一系统中交互的方法及装置 |
CN107682403A (zh) * | 2017-09-07 | 2018-02-09 | 百度在线网络技术(北京)有限公司 | 一种用于更新ugc的方法、装置和设备 |
CN107992461A (zh) * | 2017-11-23 | 2018-05-04 | 郑州云海信息技术有限公司 | 一种多人同时编辑同一文档的装置及方法 |
CN110941425A (zh) * | 2018-09-25 | 2020-03-31 | 北京龙码科技有限公司 | 图形化协同编程方法、装置和系统、服务器及存储介质 |
CN110110307A (zh) * | 2019-04-19 | 2019-08-09 | 国网天津市电力公司 | 一种基于云技术的工程前期信息编辑共享系统 |
CN110636046A (zh) * | 2019-08-20 | 2019-12-31 | 视联动力信息技术股份有限公司 | 一种协同处理文件的方法、服务器、电子设备及存储介质 |
CN110807302A (zh) * | 2019-11-04 | 2020-02-18 | 北京联想协同科技有限公司 | 文档协同编辑方法及装置、终端和计算机可读存储介质 |
CN110807302B (zh) * | 2019-11-04 | 2023-12-19 | 北京联想协同科技有限公司 | 文档协同编辑方法及装置、终端和计算机可读存储介质 |
CN111277905A (zh) * | 2020-03-09 | 2020-06-12 | 新华智云科技有限公司 | 一种在线协同视频编辑方法及装置 |
CN112258140A (zh) * | 2020-09-16 | 2021-01-22 | 北京仿真中心 | 一种基于权限控制的文档在线编辑系统和方法 |
CN112016280A (zh) * | 2020-10-16 | 2020-12-01 | 北京联想协同科技有限公司 | 一种文件编辑方法、装置及计算机可读介质 |
CN114528816A (zh) * | 2022-01-27 | 2022-05-24 | 北京飞书科技有限公司 | 协同编辑的信息展示方法、装置、电子设备和可读介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104717239A (zh) | 共享文件的协同编辑方法、服务器及用户端 | |
US9372935B2 (en) | Content management and access systems and methods | |
US20170134495A1 (en) | Method and apparatus for sharing collaboratively edited document | |
US8732784B2 (en) | Hierarchical storage management for data | |
CN103916423A (zh) | 数据同步方法及设备 | |
CN102694831B (zh) | 移动终端流媒体数据补偿方法与系统、内容分发网络 | |
CN102546836A (zh) | 一种上传文件的方法、终端、服务器及系统 | |
WO2016095149A1 (zh) | 一种数据压缩存储方法、装置,及分布式文件系统 | |
KR101701110B1 (ko) | 공동 편집 문서를 공유하는 방법 및 장치 | |
KR101822401B1 (ko) | 공동 편집 문서를 공유하는 방법 및 장치 | |
US20150215399A1 (en) | Terminal and server performing data synchronization | |
CN104717242B (zh) | 共享文件的多用户编辑方法、服务器及用户端 | |
CN104967642B (zh) | 内容分发方法及装置 | |
US20090198740A1 (en) | Data sharing | |
CN103907311A (zh) | 来自移动设备的远程访问 | |
KR101401961B1 (ko) | 증강현실 컨텐츠 공유시스템 및 방법 | |
TWI625637B (zh) | 文檔管理系統和方法 | |
KR20150029918A (ko) | 다수의 분산된 서버로 구성된 클라우드 시스템에서 콘텐츠를 동기화하는 시스템 | |
JP2008250587A (ja) | コンテンツリスト作成装置およびコンテンツリスト作成プログラム | |
CN104717241A (zh) | 文件网络共享方法、终端及服务器 | |
CN103701937A (zh) | 一种上传大文件的方法 | |
US10516723B2 (en) | Distributing subscriber data in a mobile data network | |
Lomboy | Digital Image Recompression Analysis: Twitter | |
US20110029522A1 (en) | Photo-image Discovery Device Database Management | |
CN104539606B (zh) | 基于Upnp的音频文件管理方法、装置和系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: C1104 room 100085 Beijing city Haidian District Third Street No. 9 C Applicant after: Hitevision Polytron Technologies Inc Address before: C1104 room 100085 Beijing city Haidian District Third Street No. 9 C Applicant before: HONGHE TECHNOLOGY CO., LTD. |
|
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20150617 |