一種還原字符終端屏幕顯示內(nèi)容的中文支持方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及還原字符終端屏幕顯示內(nèi)容的技術(shù)領(lǐng)域,具體是指一種還原字符終端屏幕顯示內(nèi)容的中文支持方法。
【背景技術(shù)】
[0002]網(wǎng)絡(luò)終端作為最常用的網(wǎng)絡(luò)交互工具之一,主要分為字符終端和圖形終端。雖然字符終端和圖形終端都是通過(guò)網(wǎng)絡(luò)獲取主機(jī)服務(wù)器的控制信息來(lái)決定終端顯示器上的顯示內(nèi)容,但其工作原理并不相同。字符終端獲取控制信息的最小單位是字符,而圖形終端獲取控制信息的最小單位是像素。例如:要在終端顯示器上顯示一個(gè)字符“A”,字符終端只需要在網(wǎng)絡(luò)中傳輸一個(gè)“A”,而圖形終端則需要傳輸一系列組成“A”的像素信息。字符終端簡(jiǎn)單穩(wěn)定但能夠顯示的內(nèi)容相對(duì)有限,主要運(yùn)用于金融、航空、數(shù)據(jù)維護(hù)等對(duì)穩(wěn)定和可靠性要求很高的領(lǐng)域;圖形終端能夠顯示的內(nèi)容豐富多彩但對(duì)網(wǎng)絡(luò)帶寬和計(jì)算機(jī)運(yùn)算能力要求更高,主要運(yùn)用于多媒體、娛樂(lè)、個(gè)人電腦等方向。
[0003]終端審計(jì)是將終端發(fā)生的事件進(jìn)行取證分析,檢驗(yàn)已經(jīng)實(shí)施的內(nèi)網(wǎng)安全管理策略是否滿足安全管理要求,促進(jìn)內(nèi)網(wǎng)安全的持續(xù)改善。字符終端因其低消耗、高可靠性被廣泛運(yùn)用與各種敏感關(guān)鍵行業(yè),涉及網(wǎng)絡(luò)安全的字符終端審計(jì)問(wèn)題亟待解決。中文是我國(guó)最常用的語(yǔ)言,那么在使用字符終端的過(guò)程中肯定會(huì)涉及到大量的中文。中文字符的特殊性決定了其在屏幕顯示、信息存儲(chǔ)時(shí)需要特別的處理方式。
【發(fā)明內(nèi)容】
[0004]本發(fā)明的目的在于提供一種還原字符終端屏幕顯示內(nèi)容的中文支持方法,針對(duì)字符終端,簡(jiǎn)單高效地實(shí)現(xiàn)包括中文字符在內(nèi)的屏幕內(nèi)容的還原。
[0005]本發(fā)明通過(guò)下述技術(shù)方案實(shí)現(xiàn):一種還原字符終端屏幕顯示內(nèi)容的中文支持方法,通過(guò)網(wǎng)絡(luò)監(jiān)控獲取字符終端的描繪數(shù)據(jù),將描繪數(shù)據(jù)轉(zhuǎn)化為存儲(chǔ)于屏幕矩陣中的存儲(chǔ)編碼,采用終端模擬的方式解析存儲(chǔ)編碼,還原字符終端的屏幕顯示內(nèi)容。
[0006]本發(fā)明中通過(guò)網(wǎng)絡(luò)數(shù)據(jù)監(jiān)看的方式獲取客戶端與主機(jī)交互過(guò)程中產(chǎn)生的數(shù)據(jù),尤其是主機(jī)發(fā)送給客戶端的描繪數(shù)據(jù),并通過(guò)對(duì)描繪數(shù)據(jù)的處理還原屏幕顯示內(nèi)容,完成終端模擬。所述描繪數(shù)據(jù)是主機(jī)用來(lái)向客戶端描述如何顯示屏幕內(nèi)容的數(shù)據(jù),如:字體、顏色、背景色、以及字符顯示的位置等字符屬性。
[0007]所述字符終端的屏幕可以顯示的字符分為普通字符和寬字符,常用的英文字符一般屬于普通字符,普通字符占用I個(gè)列寬;中文漢字屬于寬字符,寬字符占用2個(gè)或2個(gè)以上列寬;表述中文漢字或中文標(biāo)點(diǎn)的寬字符占用2個(gè)列寬。
[0008]進(jìn)一步地,所述存儲(chǔ)編碼為Unicode編碼。
[0009]所述Unicode編碼表是目前最權(quán)威的國(guó)際通用字符碼表,它幾乎包含所有語(yǔ)言的字符與符號(hào),它只有一個(gè)字符集,有效避免了二義性。英文字符和中文字符采用Unicode編碼且均屬于固定寬度字符,而本發(fā)明主要解決的問(wèn)題是英文字符或中文字符在字符終端屏幕內(nèi)容的還原方法,尤其是提供了一種簡(jiǎn)單的實(shí)現(xiàn)中文字符在字符終端屏幕內(nèi)容的還原方法。
[0010]進(jìn)一步地,所述屏幕矩陣是由多個(gè)與屏幕顯示一一對(duì)應(yīng)的矩陣格組成的矩陣空間,描繪數(shù)據(jù)轉(zhuǎn)化后的Unicode編碼存儲(chǔ)于對(duì)應(yīng)的矩陣格中。
[0011]所述矩陣空間由多個(gè)與屏幕顯示一一對(duì)應(yīng)的矩陣格組成。如:某屏可以顯示15行且每行20個(gè)列寬,則可將此屏幕看作為一個(gè)15X20的屏幕矩陣,此屏幕可以顯示15X20個(gè)普通字符或15X10個(gè)中文字符。
[0012]進(jìn)一步地,所述描繪數(shù)據(jù)轉(zhuǎn)化為Unicode編碼后,與英文字符對(duì)應(yīng)的英文Unicode編碼直接存儲(chǔ)至對(duì)應(yīng)的矩陣格中,與中文字符對(duì)應(yīng)的中文Unicode編碼存儲(chǔ)至對(duì)應(yīng)矩陣格并且生成占位符進(jìn)行存儲(chǔ)。
[0013]描述數(shù)據(jù)中的英文字符或中文字符均對(duì)應(yīng)一個(gè)Unicode編碼進(jìn)行轉(zhuǎn)化,然后將其對(duì)應(yīng)的Unicode編碼存儲(chǔ)至屏幕矩陣中對(duì)應(yīng)的矩陣格即可,但顯示的時(shí)候中文字符卻要占用兩個(gè)列寬。為了將傳輸、存儲(chǔ)和顯示對(duì)應(yīng)起來(lái),引入占位符,通過(guò)最簡(jiǎn)便的方式使存儲(chǔ)時(shí)的屏幕矩陣一一映射到屏幕,簡(jiǎn)單快速的建立存儲(chǔ)和顯示之間的關(guān)系。
[0014]所述占位符就是在存儲(chǔ)中文Unicode編碼時(shí)在屏幕矩陣中額外消耗一個(gè)矩陣格,使中文字符的存儲(chǔ)和屏幕顯示完成對(duì)應(yīng)。通過(guò)占位符的使用和簡(jiǎn)單的轉(zhuǎn)化就可以把數(shù)據(jù)的存儲(chǔ)和顯示轉(zhuǎn)化為直觀的點(diǎn)對(duì)點(diǎn)地映射模式,簡(jiǎn)便高效。
[0015]進(jìn)一步地,所述中文Unicode編碼存儲(chǔ)的矩陣格為中文編碼矩陣格,與中文Unicode編碼對(duì)應(yīng)的占位符存儲(chǔ)的矩陣格為占位矩陣格;所述占位矩陣格與中文編碼矩陣格同行且相鄰;所述占位矩陣格統(tǒng)一位于中文編碼矩陣格的前一格,或者占位矩陣格統(tǒng)一位于中文編碼矩陣格的后一格。
[0016]當(dāng)中文Unicode編碼需要被存儲(chǔ)時(shí),先將中文Unicode編碼存儲(chǔ)于中文編碼矩陣格中,同時(shí),生成一個(gè)占位符并將此占位符存儲(chǔ)至與對(duì)應(yīng)中文編碼矩陣格同一行且相鄰的矩陣格中。占位符矩陣格可以位于對(duì)應(yīng)中文編碼矩陣格同一行的前一格或同一行的后一格,但同一種實(shí)施方案中,占位矩陣格與中文編碼矩陣格的相對(duì)位置是一致的。
[0017]若遇到屏幕矩陣中某一行的最后一個(gè)矩陣格同時(shí)對(duì)應(yīng)一組中文Unicode編碼和其對(duì)應(yīng)占位符時(shí),自動(dòng)空出此矩陣格并跳轉(zhuǎn)至下一行進(jìn)行存儲(chǔ)。
[0018]進(jìn)一步地,所述采用終端模擬的方式進(jìn)行解析時(shí),按順序依次讀取矩陣空間中各個(gè)矩陣格中的存儲(chǔ)編碼,識(shí)別到英文Unicode編碼或中文Unicode則提取并顯示在屏幕上,識(shí)別到占位符則忽略而不顯示。
[0019]所述占位符僅消耗存儲(chǔ)空間但不參與顯示,通過(guò)按順序依次讀取矩陣空間中各個(gè)矩陣格中的存儲(chǔ)編碼,并進(jìn)行數(shù)據(jù)處理即可完成終端模擬而還原字符終端屏幕顯示內(nèi)容。
[0020]進(jìn)一步地,所述占位符與中文Unicode編碼--對(duì)應(yīng)且具有相同的生命周期。
[0021]所述占位符與中文Unicode編碼--對(duì)應(yīng)且具有相同的生命周期,所述相同的生命周期是指占位符是中文Unicode編碼的附屬信息并與其進(jìn)行唯一關(guān)聯(lián),如果中文Unicode編碼被儲(chǔ)存則對(duì)應(yīng)的占位符也被儲(chǔ)存,如果中文Unicode編碼被刪除則對(duì)應(yīng)的占位符也同時(shí)被刪除。
[0022]進(jìn)一步地,所述描繪數(shù)據(jù)采用GB18030或UTF-8進(jìn)行編碼。
[0023]在描繪數(shù)據(jù)的傳輸過(guò)程中,描繪數(shù)據(jù)會(huì)以多種編碼方式進(jìn)行傳輸。目前,我國(guó)最常用的是GB18030和UTF-8,描繪數(shù)據(jù)采用GB18030或UTF-8之中的一種方式進(jìn)行編碼即可。
[0024]本發(fā)明與現(xiàn)有技術(shù)相比,具有以下優(yōu)點(diǎn)及有益效果:
(I)本發(fā)明通過(guò)網(wǎng)絡(luò)監(jiān)控獲取字符終端的描繪數(shù)據(jù),將描繪數(shù)據(jù)轉(zhuǎn)化為存儲(chǔ)于屏幕矩陣中的存儲(chǔ)編碼,采用終端模擬的方式解析存儲(chǔ)編碼,還原字符終端的屏幕顯示內(nèi)容,簡(jiǎn)單高效地實(shí)現(xiàn)包括中文字符在內(nèi)的屏幕內(nèi)容的還原。
[0025](2)本發(fā)明中描繪數(shù)據(jù)均轉(zhuǎn)化為Unicode編碼,不管是普通字符還是寬字符都可以轉(zhuǎn)化為Unicode編碼進(jìn)行存儲(chǔ),有效避免了二義性。
[0026](3)本發(fā)明中引入占位符,使傳輸數(shù)據(jù)用的編碼和存儲(chǔ)數(shù)據(jù)用的編碼對(duì)應(yīng),針對(duì)中文字符占用2個(gè)列寬的特點(diǎn),簡(jiǎn)化終端模擬時(shí)的運(yùn)算量,快速高效的實(shí)現(xiàn)字符終端屏幕顯示內(nèi)容的還原。
【附圖說(shuō)明】
[0027]圖1為本發(fā)明實(shí)施方法的流程示意圖。
[0028]圖2為本發(fā)明在實(shí)施例2中實(shí)