[發(fā)明專利]一種大型SCL文件的快速處理方法有效
| 申請?zhí)枺?/td> | 201010547304.1 | 申請日: | 2010-11-17 |
| 公開(公告)號: | CN101996251A | 公開(公告)日: | 2011-03-30 |
| 發(fā)明(設(shè)計)人: | 吳俊;黃曉明;陸承宇;樓伯良;王松;阮黎翔;董毅 | 申請(專利權(quán))人: | 浙江省電力試驗研究院;浙江省電力試驗研究院技術(shù)服務(wù)中心 |
| 主分類號: | G06F17/30 | 分類號: | G06F17/30 |
| 代理公司: | 浙江翔隆專利事務(wù)所 33206 | 代理人: | 張建青 |
| 地址: | 310014 浙江*** | 國省代碼: | 浙江;33 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 大型 scl 文件 快速 處理 方法 | ||
技術(shù)領(lǐng)域
本發(fā)明涉及與智能電子設(shè)備有關(guān)的變電站內(nèi)通信配置描述語言,具體地說是一種處理大型SCL文件的方法。
背景技術(shù)
SCL文件是采用變電站內(nèi)通信配置描述語言(SCL)來編寫的文件,而SCL是以XML做為元語言的。因此,對SCL文件的處理在底層的基本操作上與處理XML有著非常密切的聯(lián)系。
目前在Microsoft.Net平臺下訪問并操作XML文件主要有兩種模型:流模型和DOM(文檔對象模型)。流模型通過XMLTextReader類來實現(xiàn)。該類提供Xml文件讀取的功能并可以驗證文檔是否格式良好。但其不足之處在于只能以只讀、向前的方式訪問文件,不能在文件中執(zhí)行向后導航操作。DOM通過XMLDocument實現(xiàn)。它允許編輯和更新XML文檔,可以隨機訪問文檔中的數(shù)據(jù)。但缺陷在于需要一次性加載整個文檔到內(nèi)存中,對于大型的文檔,存在資源消耗高和效率低下等問題。
SCL文件共有4種類型,其中從系統(tǒng)配置工具到智能電子設(shè)備配置工具的數(shù)據(jù)交換文件(SCD文件)包含了全部智能電子設(shè)備、通信配置和變電站描述等段落內(nèi)容,其文件體積常達到幾十兆且文件中包含數(shù)量極多的的XML節(jié)點。在對這類文件進行處理時,DOM的性能問題使得利用它來實現(xiàn)的SCL配置工具完全不適用于處理SCD文件。
發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問題是克服上述現(xiàn)有技術(shù)存在的缺陷,提供了一種新的SCL文件處理方法,其以高效、可導航、可操作的方式來處理SCL文件。
為此,本發(fā)明采用的技術(shù)方案為:首先將SCL文件全部讀入計算機內(nèi)存,在讀入文件的同時,對文件中所包含的節(jié)點信息進行分析,由于該分析并不把節(jié)點元素當作對象處理,分析的主要工作是找出文件中的節(jié)點元素存儲其在文件中的相對位置以及節(jié)點中數(shù)據(jù)的信息,其目的是保證文件在讀入后可導航。因此整個過程計算機資源消耗少,軟件可以對預(yù)處理分析后的SCL文件進行方便地導航瀏覽和查詢。
在對變電站進行配置的過程中,設(shè)備的添加、更新、刪除等操作涉及改變SCL文件的內(nèi)容時,通過SCL緩存控制來實現(xiàn)。緩存控制在內(nèi)存或磁盤上暫存所有對SCL文件的編輯操作,這些操作在用戶保存SCL文件時被寫入到原始的SCL文件中。
本發(fā)明通過對SCL文件進行預(yù)處理和緩存控制,使得文件處理既具有流模型處理文件快速、資源開銷小的優(yōu)點,又擁有DOM方式可導航可編輯的優(yōu)勢,提升了對大型SCL文件的處理效率,為IEC61850標準在電力系統(tǒng)中的推廣起了重要作用。
下面結(jié)合說明書附圖和具體實施方式對本發(fā)明作進一步說明。
附圖說明
圖1為本發(fā)明的架構(gòu)圖。
圖2-4為本發(fā)明緩存控制的原理圖。
圖5為本發(fā)明SCL文件的封裝原理圖及其與緩存之間的關(guān)系圖。
具體實施方式
在對變電站進行配置的過程中,設(shè)備的添加、更新、刪除等操作涉及改變SCL文件的內(nèi)容時,本發(fā)明通過SCL緩存控制來實現(xiàn)(如圖1所示),具體的SCL緩存控制步驟如下:
1.如圖2所示,將原始的XML格式的SCL文件載入內(nèi)存,根據(jù)XML節(jié)點的信息生成SCL文件的索引,并將索引保存在內(nèi)存中,定義新的SCL文件對象,將包含索引信息的XML文件封裝到新的SCL文件中。
2.當用戶對SCL文件進行操作時,判斷操作類型,針對讀取和修改采用不同的操作方式。
對于讀取操作,首先判斷是否存在緩存文件。如果存在,則將緩存和內(nèi)存中的SCL文件合并讀取。如果不存在緩存文件,則只需讀取內(nèi)存中的XML文件,如圖3所示。
對于修改操作,如果是第一次操作,則需要首先生成緩存文件。如不是第一次修改,則緩存文件已經(jīng)存在。此時應(yīng)在緩存中查詢是否存在待修改的節(jié)點,若存在,則直接修改緩存中的節(jié)點內(nèi)容;若不存在,則在緩存文件中添加新的節(jié)點內(nèi)容,其中保存修改后的節(jié)點內(nèi)容,如圖4所示。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于浙江省電力試驗研究院;浙江省電力試驗研究院技術(shù)服務(wù)中心,未經(jīng)浙江省電力試驗研究院;浙江省電力試驗研究院技術(shù)服務(wù)中心許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201010547304.1/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 減少植物分枝數(shù)量和提高葉綠素和花色素苷含量的方法
- 一種呼叫局間編解碼類型兼容的實現(xiàn)方法及裝置
- 一種大型SCL文件的快速處理方法
- I<sup><sup>2</sup></sup>C主設(shè)備與從設(shè)備之間串行時鐘線SCL控制的方法及裝置
- 響應(yīng)于用戶動作而確定啟用直接操縱的命中測試
- 一種極化碼與重復(fù)碼級聯(lián)的糾錯編碼方法
- 基于比特凍結(jié)輔助的極化碼SCL譯碼方法
- 向利用主從通信協(xié)議的多個從屬裝置自動分配互不相同地址的方法及用于其的裝置
- I2C總線的時鐘控制方法、主設(shè)備及連接I2C總線的設(shè)備系統(tǒng)
- 一種網(wǎng)絡(luò)芯片SCL KEY的可編程實現(xiàn)方法





