亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種文本編輯方法及裝置與流程

文檔序號:11802419閱讀:166來源:國知局
一種文本編輯方法及裝置與流程
本發(fā)明涉及數(shù)據(jù)處理技術(shù)領(lǐng)域,特別涉及一種文本編輯方法及裝置。

背景技術(shù):
隨著計算機的普及,文本編輯的應(yīng)用范圍越來越廣,無論是文字處理還是軟件開發(fā),都需要對文字進行編輯操作,而用于存儲待編輯文本的緩沖區(qū)成為了編輯文本時提高編輯速度的主要設(shè)計?,F(xiàn)有技術(shù)在利用緩沖區(qū)進行文本編輯時,先將待編輯文本存儲在緩沖區(qū)中,針對該操作,需要在緩沖區(qū)中進行插入文本操作,確定待插入文本在緩沖區(qū)中的插入位置,每插入一個字符,都要將緩沖區(qū)中的原有文本向右拷貝移動一個位置。在實現(xiàn)本發(fā)明的過程中,發(fā)明人發(fā)現(xiàn)現(xiàn)有技術(shù)至少存在以下問題:現(xiàn)有技術(shù)在緩沖區(qū)中進行文本插入操作時,由于每插入一個字符,緩沖區(qū)中的原有文本都需要向右拷貝移動一個位置,導(dǎo)致拷貝移動緩沖區(qū)中的文本產(chǎn)生的消耗隨插入字符數(shù)的增多而線性增長,使文本編輯的性能下降,處理效率降低。

技術(shù)實現(xiàn)要素:
為了提高文本編輯的性能和處理效率,本發(fā)明實施例提供了一種文本編輯方法及裝置。所述技術(shù)方案如下:一方面,提供了一種文本編輯方法,所述方法包括:確定待插入文本在緩沖區(qū)中的插入位置;根據(jù)所述插入位置將緩沖區(qū)中對應(yīng)的原有文本在緩沖區(qū)中一次性拷貝移動預(yù)設(shè)位數(shù),得到為所述待插入文本預(yù)留的插入間隙;將所述待插入文本的字符插入所述預(yù)留的插入間隙,完成插入文本操作;所述將所述待插入文本的字符插入所述預(yù)留的插入間隙,完成插入文本操作,具體包括:將所述待插入文本的字符依次插入所述預(yù)留的插入間隙;如果所述待插入文本的字符數(shù)大于所述預(yù)留的插入間隙,則調(diào)整所述插入間隙,并繼續(xù)執(zhí)行將所述待插入文本的字符依次插入所述預(yù)留的插入間隙的過程。進一步地,所述根據(jù)所述插入位置將緩沖區(qū)中對應(yīng)的原有文本在緩沖區(qū)中一次性拷貝移動預(yù)設(shè)位數(shù)之前,還包括:判斷所述插入位置是否存在為所述待插入文本預(yù)留的插入間隙;如果是,則根據(jù)所述預(yù)留的插入間隙插入所述待插入文本的字符,完成插入文本操作;如果否,則執(zhí)行根據(jù)所述插入位置將緩沖區(qū)中對應(yīng)的原有文本在緩沖區(qū)中一次性拷貝移動預(yù)設(shè)位數(shù)的步驟。進一步地,所述調(diào)整所述插入間隙,具體包括:將緩沖區(qū)中所述對應(yīng)的原有文本根據(jù)插入的字符數(shù)一次性拷貝移動一至多個預(yù)設(shè)位數(shù)??蛇x地,所述方法還包括:刪除緩沖區(qū)中的一個或多個字符,同時保持緩沖區(qū)中其它未被刪除的字符的位置不變,所述刪除的緩沖區(qū)中的字符為緩沖區(qū)中原有文本的字符或插入的所述待插入文本的字符。另一方面,還提供了一種文本編輯裝置,所述裝置包括:確定模塊,用于確定待插入文本在緩沖區(qū)中的插入位置;拷貝移動模塊,用于根據(jù)所述確定模塊確定的所述插入位置將緩沖區(qū)中對應(yīng)的原有文本在緩沖區(qū)中一次性拷貝移動預(yù)設(shè)位數(shù),得到為所述待插入文本預(yù)留的插入間隙;插入模塊,用于將所述待插入文本的字符插入所述拷貝移動模塊得到的所述預(yù)留的插入間隙,完成插入文本操作;所述插入模塊,具體包括:插入單元,用于將所述待插入文本的字符依次插入所述預(yù)留的插入間隙;調(diào)整單元,用于如果所述待插入文本的字符數(shù)大于所述預(yù)留的插入間隙,則調(diào)整所述插入間隙,使所述插入單元繼續(xù)執(zhí)行將所述待插入文本的字符依次插入所述預(yù)留的插入間隙的過程。進一步地,所述裝置還包括:判斷模塊,用于判斷所述插入位置是否存在為所述待插入文本預(yù)留的插入間隙;所述插入模塊,還用于如果所述判斷模塊判斷所述插入位置存在為所述待插入文本預(yù)留的插入間隙,則將所述待插入文本的字符插入所述預(yù)留的插入間隙,完成插入文本操作;所述拷貝移動模塊,用于如果所述判斷模塊判斷所述插入位置不存在為所述待插入文本預(yù)留的插入間隙,則執(zhí)行根據(jù)所述插入位置將緩沖區(qū)中對應(yīng)的原有文本在緩沖區(qū)中一次性拷貝移動預(yù)設(shè)位數(shù)。進一步地,所述調(diào)整單元,具體用于將緩沖區(qū)中所述對應(yīng)的原有文本根據(jù)插入的字符數(shù) 一次性拷貝移動一至多個預(yù)設(shè)位數(shù)。可選地,所述裝置還包括:文本刪除模塊,用于刪除緩沖區(qū)中的一個或多個字符,同時保持緩沖區(qū)中其它未被刪除的字符的位置不變,所述刪除的緩沖區(qū)中的字符為緩沖區(qū)中原有文本的字符或插入的所述待插入文本的字符。本發(fā)明實施例提供的技術(shù)方案帶來的有益效果是:通過在插入文本之前將緩沖區(qū)中的原有文本一次性拷貝移動預(yù)設(shè)位數(shù),在緩沖區(qū)中為待插入文本產(chǎn)生預(yù)留間隙,將待插入的文本依次插入到預(yù)留的插入間隙,減少因多次拷貝移動緩沖區(qū)中的文本而產(chǎn)生的消耗,從而提高文本編輯的性能和效率。附圖說明為了更清楚地說明本發(fā)明實施例中的技術(shù)方案,下面將對實施例描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。圖1是本發(fā)明實施例一提供的一種文本編輯方法流程圖;圖2是本發(fā)明實施例二提供的一種文本編輯方法流程圖;圖3是本發(fā)明實施例三提供的第一種文本編輯裝置的結(jié)構(gòu)示意圖;圖4是本發(fā)明實施例三提供的第二種文本編輯裝置的結(jié)構(gòu)示意圖;圖5是本發(fā)明實施例三提供的第三種文本編輯裝置的結(jié)構(gòu)示意圖;圖6是本發(fā)明實施例三提供的第四種文本編輯裝置的結(jié)構(gòu)示意圖。具體實施方式為使本發(fā)明的目的、技術(shù)方案和優(yōu)點更加清楚,下面將結(jié)合附圖對本發(fā)明實施方式作進一步地詳細描述。實施例一本實施例提供了一種文本編輯方法,參見圖1,該方法流程具體如下:101:確定待插入文本在緩沖區(qū)中的插入位置。102:根據(jù)插入位置將緩沖區(qū)中對應(yīng)的原有文本在緩沖區(qū)中一次性拷貝移動預(yù)設(shè)位數(shù),得到為待插入文本預(yù)留的插入間隙。103:將待插入文本的字符插入預(yù)留的插入間隙,完成插入文本操作。進一步地,根據(jù)插入位置將緩沖區(qū)中對應(yīng)的原有文本在緩沖區(qū)中一次性拷貝移動預(yù)設(shè)位數(shù)之前,還包括:判斷插入位置是否存在為待插入文本預(yù)留的插入間隙;如果是,則根據(jù)預(yù)留的插入間隙插入待插入文本的字符,完成插入文本操作;如果否,則執(zhí)行根據(jù)插入位置將緩沖區(qū)中對應(yīng)的原有文本在緩沖區(qū)中一次性拷貝移動預(yù)設(shè)位數(shù)的步驟。其中,將待插入文本的字符插入預(yù)留的插入間隙,完成插入文本操作,具體包括:將待插入文本的字符依次插入預(yù)留的插入間隙;如果待插入文本的字符數(shù)大于預(yù)留的插入間隙,則調(diào)整插入間隙,并繼續(xù)執(zhí)行將待插入文本的字符依次插入預(yù)留的插入間隙的過程。進一步地,調(diào)整插入間隙,具體包括:將緩沖區(qū)中對應(yīng)的原有文本根據(jù)插入的字符數(shù)一次性拷貝移動一至多個預(yù)設(shè)位數(shù)??蛇x地,該方法還包括:刪除緩沖區(qū)中的一個或多個字符,同時保持緩沖區(qū)中其它未被刪除的字符的位置不變,刪除的緩沖區(qū)中的字符為緩沖區(qū)中原有文本的字符或插入的待插入文本的字符。本實施例提供的方法,通過在插入文本之前將緩沖區(qū)中的原有文本一次性拷貝移動預(yù)設(shè)位數(shù),在緩沖區(qū)中為待插入文本產(chǎn)生預(yù)留間隙,將待插入的文本依次插入到預(yù)留的插入間隙,減少因多次拷貝移動緩沖區(qū)中的文本而產(chǎn)生的消耗,進而提高文本編輯的性能和效率;另外,在刪除緩沖區(qū)中的一個或多個字符時,通過保持緩沖區(qū)中其它未被刪除的字符的位置不變,從而可進一步減少因多次拷貝移動緩沖區(qū)中的文本而產(chǎn)生的消耗,提高文本編輯的性能和效率。為了更加清楚地闡述上述實施例提供的方法,結(jié)合上述內(nèi)容,接下來以如下實施例二為例,對文本編輯方法進行詳細的說明,詳見如下實施例二:實施例二本實施例提供了一種文本編輯方法,參見圖2,該方法流程具體如下:201:確定待插入文本在緩沖區(qū)中的插入位置。針對該步驟,關(guān)于確定待插入文本在緩沖區(qū)中的插入位置的方式,本實施例不做具體限定。實際應(yīng)用中,如果需要執(zhí)行插入文本操作,用戶可以通過移動光標在原有文本處點擊插入位置,從而通過檢測光標停留的位置確定待插入文本的插入位置,再通過確定的插入文本 的位置確定其在緩沖區(qū)中的插入位置。202:判斷插入位置是否存在為待插入文本預(yù)留的插入間隙,如果是,執(zhí)行步驟204,如果否,執(zhí)行步驟203。針對該步驟,本實施例不對判斷插入位置是否存在為待插入文本預(yù)留的插入間隙的方法進行限定,如果本次插入文本的操作為第一次插入文本操作,不存在預(yù)留的插入間隙,則可通過如下步驟203的拷貝移動操作得到預(yù)留的插入間隙,之后再執(zhí)行步驟204所示的插入文本操作;如果本次插入文本的操作為非第一次插入文本的操作,且在插入位置遺留了之前插入文本時拷貝移動原有文本產(chǎn)生的間隙,而該間隙又是未被之前插入的文本所占用的插入間隙,因此,可將其作為為本次插入文本預(yù)留的插入間隙,因此,無需再執(zhí)行如下步驟203中拷貝移動的動作,而可以直接進行插入操作,即直接執(zhí)行步驟204。203:根據(jù)插入位置將緩沖區(qū)中對應(yīng)的原有文本一次性向右拷貝移動預(yù)設(shè)位數(shù),得到為待插入文本預(yù)留的插入間隙。其中,本實施例不對在緩沖區(qū)中拷貝移動對應(yīng)的原有文本的方式進行限定,具體實施時,可通過現(xiàn)有緩沖區(qū)中拷貝移動技術(shù)實現(xiàn)。另外,本實施例同樣不對具體的預(yù)設(shè)位數(shù)進行限定。得到的插入間隙的長度為插入待插入文本的起始位置與對應(yīng)的原有文本之間的長度。204:將待插入文本的字符插入預(yù)留的插入間隙,完成插入文本操作。具體地,將待插入文本的字符插入預(yù)留的插入間隙時,可將待插入文本的字符依次插入預(yù)留的插入間隙;如果待插入文本的字符數(shù)大于預(yù)留的插入間隙,則調(diào)整插入間隙,并繼續(xù)執(zhí)行將待插入文本的字符依次插入預(yù)留的插入間隙的過程。其中,對于待插入文本的字符數(shù)大于預(yù)留的插入間隙的情況,本實施例不對調(diào)整插入間隙的方式進行限定,例如,可采取如下方式:將緩沖區(qū)中對應(yīng)的原有文本根據(jù)插入的字符數(shù)一次性拷貝移動一至多個預(yù)設(shè)位數(shù)。為了清楚地解釋說明本步驟的具體實現(xiàn)過程,接下來以緩沖區(qū)中的原有文本為“Testcase”,現(xiàn)將待插入文本“example”插入到原有文本字符“Test”的前面為例,即以上述步驟202中判斷插入位置不存在為待插入文本預(yù)留的插入間隙為例,如果預(yù)設(shè)位數(shù)為7,在上述步驟203將緩沖區(qū)中原有文本“Testcase”一次性向右拷貝移動7個位置,緩沖區(qū)中的文本為“Test*******case”,其中的“*******”用于標識拷貝移動后產(chǎn)生的7個預(yù)留的插入間隙,此時得到的預(yù)留的插入間隙與待插入文本的字符數(shù)相等,將待插入文本“example”的字符依次插入預(yù)留的插入間隙后,即可完成文本插入操作。對于待插入文本的字符數(shù)大于得到的預(yù)留的插入間隙的情況,以預(yù)設(shè)位數(shù)為5,上述步 驟203將緩沖區(qū)中的原有文本“Testcase”一次性向右拷貝移動5個位置為例,緩沖區(qū)中的文本為“Test*****case”,其中的“*****”用于標識拷貝移動后產(chǎn)生的5個預(yù)留的插入間隙,此時待插入文本的字符數(shù)大于得到的預(yù)留的插入間隙,則需要調(diào)整插入間隙,此時,在插入待插入文本“example”的第4個字符后,由于后續(xù)拷貝移動原有文本的次數(shù)隨未插入的字符數(shù)的多少而定,為了節(jié)省后續(xù)拷貝移動原有文本的次數(shù),將原有文本向右拷貝移動一次或多次預(yù)設(shè)位數(shù),即采取每次拷貝移動5個位置的方式,從而減少拷貝移動原有文本的次數(shù),降低消耗。對于上述步驟202判斷插入位置存在為待插入文本預(yù)留的插入間隙的情況,例如,在執(zhí)行本次插入文本的操作之前,已經(jīng)執(zhí)行過插入字符數(shù)為5的文本操作,而且已經(jīng)將原有文本向右拷貝移動的位數(shù)為10,即得到的插入間隙為10,則在上次執(zhí)行插入文本操作后,存在5個多余的間隙,為此,如果本次在該已有的間隙處進行插入文本操作,可直接在已有的間隙處插入文本字符,而不需要拷貝移動原有文本。但如果插入的文本字符數(shù)大于已有間隙,則仍然需要調(diào)整間隙,具體調(diào)整過程同上面描述,此處不再贅述。需要說明的是,直至該步驟204,文本插入的操作流程已經(jīng)結(jié)束,針對文本刪除的操作,詳見后續(xù)步驟205和步驟206。205:刪除緩沖區(qū)中的一個或多個字符,刪除的緩沖區(qū)中的字符為緩沖區(qū)中原有文本的字符或插入的所述待插入文本的字符。針對該步驟,本實施例不對刪除緩沖區(qū)中的字符的方式進行限定,具體實施時,可通過現(xiàn)有的刪除文本技術(shù)實現(xiàn)。另外,該刪除的緩沖區(qū)中的字符既可以為緩沖區(qū)中原有文本的字符,也可以為插入的待插入文本的字符,本實施例同樣不對刪除的具體字符及字符數(shù)進行限定。206:保持緩沖區(qū)中其它未被刪除的字符的位置不變。具體地,為了在刪除緩沖區(qū)中的一個或多個字符后,減少拷貝移動緩沖區(qū)中其它未被刪除的字符而產(chǎn)生的消耗,本實施例提供的方法采取了保持緩沖區(qū)中其它未被刪除的字符的位置不變的方式。例如:以刪除緩沖區(qū)中的原有文本“Testcaseeg”中的字符“es”為例,在上述步驟205將字符“es”刪除后,如果該步驟保持緩沖區(qū)中其它未被刪除的字符的位置不變,即緩沖區(qū)中的文本變成“T**tcaseeg”,因而能夠減少因拷貝移動產(chǎn)生的消耗,其中,“**”標識2個間隙。本實施例提供的方法,通過在插入文本之前將緩沖區(qū)中的原有文本一次性拷貝移動預(yù)設(shè) 位數(shù),在緩沖區(qū)中為待插入文本產(chǎn)生預(yù)留間隙,將待插入的文本依次插入到預(yù)留的插入間隙,減少因拷貝移動緩沖區(qū)中的文本而產(chǎn)生的消耗,從而提高文本編輯的性能和效率;另外,在刪除緩沖區(qū)中的一個或多個字符時,通過保持緩沖區(qū)中其它未被刪除的字符的位置不變,從而可進一步減少因多次拷貝移動緩沖區(qū)中的文本而產(chǎn)生的消耗,提高文本編輯的性能和效率。實施例三本實施例提供了一種文本編輯裝置,該文本編輯裝置用于執(zhí)行上述實施例一和實施例二中的文本編輯方法,參見圖3,該文本編輯裝置包括:確定模塊301,用于確定待插入文本在緩沖區(qū)中的插入位置;拷貝移動模塊302,用于根據(jù)確定模塊301確定的插入位置將緩沖區(qū)中對應(yīng)的原有文本在緩沖區(qū)中一次性拷貝移動預(yù)設(shè)位數(shù),得到為待插入文本預(yù)留的插入間隙;插入模塊303,用于將待插入文本的字符插入拷貝移動模塊302得到的預(yù)留的插入間隙,完成插入文本操作。進一步地,參見圖4,該裝置還包括:判斷模塊304,用于判斷插入位置是否存在為待插入文本預(yù)留的插入間隙;相應(yīng)的,插入模塊303,還用于如果判斷模塊304判斷插入位置存在為待插入文本預(yù)留的插入間隙,則將待插入文本的字符插入預(yù)留的插入間隙,完成插入文本操作;拷貝移動模塊302,具體用于如果判斷模塊304判斷插入位置不存在為待插入文本預(yù)留的插入間隙,則執(zhí)行根據(jù)插入位置將緩沖區(qū)中對應(yīng)的原有文本在緩沖區(qū)中一次性拷貝移動預(yù)設(shè)位數(shù)。該判斷模塊304判斷插入位置是否存在為待插入文本預(yù)留的插入間隙的具體操作詳見上述實施例二中步驟202的相關(guān)描述。其中,插入模塊303插入待插入文本的過程詳見上述實施例二中步驟203的相關(guān)描述,此處不再贅述。參見圖5,該插入模塊303,具體包括:插入單元303A,用于將待插入文本的字符依次插入預(yù)留的插入間隙;調(diào)整單元303B,用于如果待插入文本的字符數(shù)大于預(yù)留的插入間隙,則調(diào)整插入間隙,使插入單元303A繼續(xù)執(zhí)行將待插入文本的字符依次插入預(yù)留的插入間隙的過程。具體地,調(diào)整單元303B,具體用于將緩沖區(qū)中對應(yīng)的原有文本根據(jù)插入的字符數(shù)一次性拷貝移動一至多個預(yù)設(shè)位數(shù)??蛇x地,針對在緩沖區(qū)中刪除文本的操作,參見圖6,該裝置還包括:文本刪除模塊305,用于刪除緩沖區(qū)中的一個或多個字符,同時保持緩沖區(qū)中其它未被刪除的字符的位置不變,刪除的緩沖區(qū)中的字符為緩沖區(qū)中原有文本的字符或插入的待插入文本的字符。該文本刪除模塊305刪除文本的具體操作詳見上述實施例二中步驟204和步驟205的相關(guān)描述,此處不再贅述。本實施例提供的文本編輯裝置,通過在插入文本之前將緩沖區(qū)中的原有文本一次性拷貝移動預(yù)設(shè)位數(shù),在緩沖區(qū)中為待插入文本產(chǎn)生預(yù)留間隙,將待插入的文本依次插入到預(yù)留的插入間隙,減少因拷貝移動緩沖區(qū)中的文本而產(chǎn)生的消耗,提高了文本編輯的性能和效率;另外,在刪除緩沖區(qū)中的一個或多個字符時,通過保持緩沖區(qū)中其它未被刪除的字符的位置不變,從而可進一步減少因多次拷貝移動緩沖區(qū)中的文本而產(chǎn)生的消耗,提高文本編輯的性能和效率。需要說明的是:上述實施例提供的一種文本編輯裝置在進行文本編輯操作時,僅以上述各功能模塊的劃分進行舉例說明,實際應(yīng)用中,可以根據(jù)需要而將上述功能分配由不同的功能模塊完成,即將裝置的內(nèi)部結(jié)構(gòu)劃分成不同的功能模塊,以完成以上描述的全部或者部分功能。另外,上述實施例提供的文本編輯裝置與文本編輯方法實施例屬于同一構(gòu)思,其具體實現(xiàn)過程詳見方法實施例,這里不再贅述。本領(lǐng)域普通技術(shù)人員可以理解實現(xiàn)上述實施例的全部或部分步驟可以通過硬件來完成,也可以通過程序來指令相關(guān)的硬件完成,所述的程序可以存儲于一種計算機可讀存儲介質(zhì)中,上述提到的存儲介質(zhì)可以是只讀存儲器,磁盤或光盤等。以上所述僅為本發(fā)明的較佳實施例,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進等,均應(yīng)包含在本發(fā)明的保護范圍之內(nèi)。
當前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1