欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種OLE對(duì)象解析方法、裝置、計(jì)算機(jī)設(shè)備和存儲(chǔ)介質(zhì)與流程

文檔序號(hào):40578738發(fā)布日期:2025-01-07 20:18閱讀:6來(lái)源:國(guó)知局
一種OLE對(duì)象解析方法、裝置、計(jì)算機(jī)設(shè)備和存儲(chǔ)介質(zhì)與流程

本技術(shù)涉及計(jì)算機(jī)輔助設(shè)計(jì),尤其涉及一種ole對(duì)象解析方法、裝置、計(jì)算機(jī)設(shè)備和存儲(chǔ)介質(zhì)。


背景技術(shù):

1、隨著信息技術(shù)的發(fā)展,cad(computer?aided?design)軟件在各行各業(yè)得到廣泛應(yīng)用,cad軟件可有效的幫助設(shè)計(jì)師提高設(shè)計(jì)效率。windows操作系統(tǒng)下,可以將其他軟件的數(shù)據(jù)復(fù)制并粘貼到cad軟件中,如從excel表格中復(fù)制部分表格數(shù)據(jù),并將其粘貼到cad中,cad將該數(shù)據(jù)保存為ole(object?linking?and?embedding)對(duì)象,并顯示為一個(gè)表格。由此可以實(shí)現(xiàn)cad和其他軟件的數(shù)據(jù)交互。傳統(tǒng)技術(shù)中,可以借助windows操作系統(tǒng)的ole和com技術(shù)來(lái)實(shí)現(xiàn),但其存在的問題是linux環(huán)境中沒有相關(guān)的組件支持,所以不能跨平臺(tái)使用,因此無(wú)法正常顯示圖紙中保存的ole對(duì)象數(shù)據(jù),也不能對(duì)其進(jìn)行編輯。


技術(shù)實(shí)現(xiàn)思路

1、本技術(shù)的目的旨在至少能解決上述的技術(shù)缺陷之一,特別是提供了一種可以在linux環(huán)境下對(duì)ole對(duì)象進(jìn)行解析,從而為ole對(duì)象在cad軟件上正常顯示和操作提供支持的方案。

2、第一方面,本技術(shù)提供了一種ole對(duì)象解析方法,包括:

3、從目標(biāo)圖紙文件中提取出一個(gè)以上ole對(duì)象對(duì)應(yīng)的二進(jìn)制數(shù)據(jù)流;

4、對(duì)于任意一個(gè)二進(jìn)制數(shù)據(jù)流,從二進(jìn)制數(shù)據(jù)流的各個(gè)扇區(qū)中提取并組合得到一個(gè)以上的文件流;

5、遍歷各文件流,根據(jù)文件流中類別標(biāo)識(shí)字段的取值,確定文件流的文件類型;

6、若文件類型反映文件流屬于源文件或顯示文件,則存儲(chǔ)文件流,并記錄下對(duì)應(yīng)的地址信息和文件類型,以在展示目標(biāo)圖紙文件時(shí)根據(jù)對(duì)應(yīng)地址信息讀取出文件流并將文件流按照自身文件類型對(duì)應(yīng)的方式展示。

7、在其中一個(gè)實(shí)施例中,從目標(biāo)圖紙文件中提取出一個(gè)以上ole對(duì)象對(duì)應(yīng)的二進(jìn)制數(shù)據(jù)流,包括:

8、在目標(biāo)圖紙文件對(duì)不同類別的實(shí)體類進(jìn)行反序列化的過程中,判斷當(dāng)前進(jìn)行反序列化的實(shí)體類是否屬于目標(biāo)類;

9、若是,則以目標(biāo)類中各對(duì)象的反序列化對(duì)象作為二進(jìn)制數(shù)據(jù)流,并以目標(biāo)類中各對(duì)象的句柄為鍵、對(duì)應(yīng)的二進(jìn)制數(shù)據(jù)流為值建立ole對(duì)象索引表;

10、在其中一個(gè)實(shí)施例中,對(duì)于任意一個(gè)二進(jìn)制數(shù)據(jù)流,從二進(jìn)制數(shù)據(jù)流的各個(gè)扇區(qū)中提取并組合得到一個(gè)以上的文件流,包括:

11、遍歷ole對(duì)象索引表中所包含的各對(duì)象,基于被遍歷到對(duì)象的句柄和ole對(duì)象索引表,得到目標(biāo)二進(jìn)制數(shù)據(jù)流;

12、根據(jù)目標(biāo)二進(jìn)制數(shù)據(jù)流的文件頭構(gòu)建扇區(qū)配置表,并根據(jù)扇區(qū)配置表確定目錄流對(duì)應(yīng)的所有目錄扇區(qū);

13、遍歷目錄扇區(qū)中的所有目錄入口,判斷被遍歷到的目錄入口的入口類型是否為文件流入口;

14、若否,則繼續(xù)遍歷,若是,則從當(dāng)前目錄入口中提取文件流起始扇區(qū)標(biāo)識(shí);

15、根據(jù)文件流起始扇區(qū)標(biāo)識(shí)和扇區(qū)配置表,從與當(dāng)前目錄入口對(duì)應(yīng)文件流相關(guān)的文件流扇區(qū)中依次提取并拼接得到當(dāng)前目錄入口對(duì)應(yīng)的文件流。

16、在其中一個(gè)實(shí)施例中,在根據(jù)目標(biāo)二進(jìn)制數(shù)據(jù)流的文件頭構(gòu)建扇區(qū)配置表前,還包括:

17、判斷目標(biāo)二進(jìn)制數(shù)據(jù)流前第一數(shù)量字節(jié)的值是否與第一組合相同;

18、若是,則將目標(biāo)二進(jìn)制數(shù)據(jù)流前第二數(shù)量字節(jié)的部分確定為文件頭,其余部分確定為扇區(qū)部分;

19、若否,則繼續(xù)遍歷ole對(duì)象索引表中所包含的各對(duì)象。

20、在其中一個(gè)實(shí)施例中,在將目標(biāo)二進(jìn)制數(shù)據(jù)流前第二數(shù)量字節(jié)的部分確定為文件頭后,還包括:

21、讀取文件頭在第一偏移位置的取值,以確定扇區(qū)數(shù)量;

22、判斷扇區(qū)部分的數(shù)據(jù)長(zhǎng)度是否與扇區(qū)數(shù)量匹配;

23、若是,則轉(zhuǎn)入根據(jù)目標(biāo)二進(jìn)制數(shù)據(jù)流的文件頭構(gòu)建扇區(qū)配置表的步驟繼續(xù)執(zhí)行;

24、若否,則繼續(xù)遍歷ole對(duì)象索引表中所包含的各對(duì)象。

25、在其中一個(gè)實(shí)施例中,根據(jù)文件流起始扇區(qū)標(biāo)識(shí)和扇區(qū)配置表,從與當(dāng)前目錄入口對(duì)應(yīng)文件流相關(guān)的文件流扇區(qū)中依次提取并拼接得到當(dāng)前目錄入口對(duì)應(yīng)的文件流,包括:

26、根據(jù)文件流起始扇區(qū)標(biāo)識(shí)從扇區(qū)配置表中找到對(duì)應(yīng)的扇區(qū)鏈;

27、根據(jù)扇區(qū)鏈,在扇區(qū)部分確定對(duì)應(yīng)的文件流扇區(qū)和讀取順序;

28、根據(jù)讀取順序依次讀取各文件流扇區(qū),并將讀取結(jié)果拼接,得到當(dāng)前目錄入口對(duì)應(yīng)的文件流。

29、在其中一個(gè)實(shí)施例中,判斷被遍歷到的目錄入口的入口類型是否為文件流入口,包括:

30、若被遍歷到的目錄入口在第二偏移位置的取值與第二組合相同,則判定入口類型為文件流入口,否則判定為不是文件流入口。

31、在其中一個(gè)實(shí)施例中,根據(jù)文件流中類別標(biāo)識(shí)字段的取值,確定文件流的文件類型之前,還包括:

32、判斷文件流中一個(gè)以上的目標(biāo)字段的取值是否均屬于設(shè)定有效取值;

33、若是,則執(zhí)行根據(jù)文件流中類別標(biāo)識(shí)字段的取值,確定文件流的文件類型的步驟;

34、若否,則繼續(xù)遍歷文件流。

35、第二方面,本技術(shù)提供了一種ole對(duì)象解析裝置,包括:

36、二進(jìn)制數(shù)據(jù)流提取模塊,用于從目標(biāo)圖紙文件中提取出一個(gè)以上ole對(duì)象對(duì)應(yīng)的二進(jìn)制數(shù)據(jù)流;

37、文件流組合模塊,用于對(duì)于任意一個(gè)ole對(duì)象對(duì)應(yīng)的二進(jìn)制數(shù)據(jù)流,從二進(jìn)制數(shù)據(jù)流的各個(gè)扇區(qū)中提取并組合得到一個(gè)以上的文件流;

38、文件流類型判斷模塊,用于遍歷各文件流,根據(jù)文件流中類別標(biāo)識(shí)字段的取值,確定文件流的文件類型;

39、記錄模塊,用于若文件類型反映文件流屬于源文件或顯示文件,則存儲(chǔ)文件流,并記錄下對(duì)應(yīng)的地址信息和文件類型,以在展示目標(biāo)圖紙文件時(shí)根據(jù)對(duì)應(yīng)地址信息讀取出文件流并將文件流按照自身文件類型對(duì)應(yīng)的方式展示。

40、第三方面,本技術(shù)提供了一種計(jì)算機(jī)設(shè)備,包括一個(gè)或多個(gè)處理器,以及存儲(chǔ)器,存儲(chǔ)器中存儲(chǔ)有計(jì)算機(jī)可讀指令,計(jì)算機(jī)可讀指令被一個(gè)或多個(gè)處理器執(zhí)行時(shí),執(zhí)行上述任一實(shí)施例中的ole對(duì)象解析方法的步驟。

41、第四方面,一種存儲(chǔ)介質(zhì),存儲(chǔ)介質(zhì)中存儲(chǔ)有計(jì)算機(jī)可讀指令,計(jì)算機(jī)可讀指令被一個(gè)或多個(gè)處理器執(zhí)行時(shí),使得一個(gè)或多個(gè)處理器執(zhí)行上述任一實(shí)施例中的ole對(duì)象解析方法的步驟。

42、從以上技術(shù)方案可以看出,本技術(shù)實(shí)施例具有以下優(yōu)點(diǎn):

43、基于本技術(shù)提供的ole對(duì)象解析方法,首先從目標(biāo)圖紙文件中提取出一個(gè)以上ole對(duì)象對(duì)應(yīng)的二進(jìn)制數(shù)據(jù)流,接著針對(duì)每個(gè)二進(jìn)制數(shù)據(jù)流,從其各個(gè)扇區(qū)提取并組合得到一個(gè)以上的文件流,隨后遍歷各文件流,依據(jù)文件流中類別標(biāo)識(shí)字段的取值確定文件類型,最后若文件類型表明文件流屬于源文件或顯示文件,便存儲(chǔ)該文件流并記錄地址信息與文件類型,以便展示目標(biāo)圖紙文件時(shí)能按對(duì)應(yīng)方式展示文件流。通過這一系列步驟能精準(zhǔn)、全面地解析ole對(duì)象,將原本離散在扇區(qū)中的二進(jìn)制數(shù)據(jù)可以組合成完整、連續(xù)的文件流,確定文件類型則為后續(xù)正確展示奠定基礎(chǔ),使得不同類型的文件流能按照自身特性進(jìn)行展示,使其原本嵌入在圖紙文件中的各類信息得以清晰、完整的呈現(xiàn),為用戶在linux環(huán)境下查看和利用圖紙文件中的各類嵌入信息提供了極大便利。

當(dāng)前第1頁(yè)1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
广丰县| 油尖旺区| 佛坪县| 桃园县| 宁阳县| 邮箱| 莱阳市| 嘉黎县| 乌鲁木齐县| 衡阳市| 清新县| 余姚市| 漾濞| 盐津县| 合阳县| 新余市| 香港 | 安溪县| 威海市| 灵川县| 沧源| 陇南市| 准格尔旗| 驻马店市| 湖南省| 南雄市| 德昌县| 双柏县| 鹤壁市| 秭归县| 方城县| 漠河县| 祁连县| 汤原县| 汶上县| 黑龙江省| 高碑店市| 淳安县| 昌乐县| 伊川县| 凌海市|