[發(fā)明專利]文件解析方法及裝置有效
| 申請?zhí)枺?/td> | 201710020706.8 | 申請日: | 2017-01-12 |
| 公開(公告)號: | CN106874386B | 公開(公告)日: | 2020-07-28 |
| 發(fā)明(設(shè)計)人: | 陳曉攀;熊志強(qiáng);胡偉;梁嘉 | 申請(專利權(quán))人: | 深圳市漢云科技有限公司 |
| 主分類號: | G06F16/16 | 分類號: | G06F16/16;G06F16/178;G06F16/185 |
| 代理公司: | 深圳中一專利商標(biāo)事務(wù)所 44237 | 代理人: | 陽開亮 |
| 地址: | 518000 廣東省深圳市*** | 國省代碼: | 廣東;44 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 文件 解析 方法 裝置 | ||
1.一種文件解析方法,其特征在于,所述解析方法包括:
預(yù)先配置不同字段解析狀態(tài)下讀取到預(yù)設(shè)特殊字符后所對應(yīng)執(zhí)行的文件解析策略,所述文件解析策略對待解析文件中的數(shù)據(jù)進(jìn)行讀取處理、容錯處理、保存處理,以及對字段解析狀態(tài)進(jìn)行狀態(tài)轉(zhuǎn)變處理;
讀取待解析文件中的數(shù)據(jù),獲取當(dāng)前的字段解析狀態(tài);
從所述預(yù)先配置不同字段解析狀態(tài)下讀取到預(yù)設(shè)特殊字符后所對應(yīng)執(zhí)行的文件解析策略中查找出與所述當(dāng)前的字段解析狀態(tài)相匹配的文件解析策略;
利用與所述當(dāng)前的字段解析狀態(tài)相匹配的文件解析策略執(zhí)行相應(yīng)的文件解析處理流程;
所述利用與所述當(dāng)前的字段解析狀態(tài)相匹配的文件解析策略執(zhí)行相應(yīng)的文件解析處理流程包括:當(dāng)所述當(dāng)前的字段解析狀態(tài)為行結(jié)束狀態(tài)時,讀取下一個字符,若所述下一個字符為字段包括符,則所述當(dāng)前的字段解析狀態(tài)由所述行結(jié)束狀態(tài)轉(zhuǎn)變成字段開始狀態(tài);當(dāng)所述當(dāng)前的字段解析狀態(tài)為所述字段開始狀態(tài)時,若接下來讀取到的字符不是所述字段包括符,則所述當(dāng)前的字段解析狀態(tài)由所述字段開始狀態(tài)轉(zhuǎn)變成字段匹配狀態(tài);當(dāng)所述當(dāng)前的字段解析狀態(tài)為所述字段匹配狀態(tài)時,根據(jù)與所述字段匹配狀態(tài)相匹配的文件解析策略讀取所述待解析文件中的數(shù)據(jù),若讀取到當(dāng)前字符為所述字段包括符,則所述當(dāng)前的字段解析狀態(tài)由所述字段匹配狀態(tài)轉(zhuǎn)變成字段結(jié)束狀態(tài);當(dāng)所述當(dāng)前的字段解析狀態(tài)為所述字段結(jié)束狀態(tài)時,讀取下一個字符,若所述下一個字符不是字段分隔符或行結(jié)束符,則對所述當(dāng)前字符之后的字符進(jìn)行容錯處理;
所述解析方法還包括:當(dāng)所述當(dāng)前的字段解析狀態(tài)為所述字段結(jié)束狀態(tài)時,若所述下一個字符為所述字段分隔符或所述行結(jié)束符,檢測所述待解析文件中是否有出錯標(biāo)簽;若沒有所述出錯標(biāo)簽,則所述當(dāng)前的字段解析狀態(tài)由所述字段結(jié)束狀態(tài)轉(zhuǎn)變成字段分割狀態(tài)或所述行結(jié)束狀態(tài);若有所述出錯標(biāo)簽,則檢測容錯標(biāo)記功能是否打開;若打開,則延長所述出錯標(biāo)簽的標(biāo)志范圍;若沒有打開,則所述當(dāng)前的字段解析狀態(tài)由所述字段結(jié)束狀態(tài)轉(zhuǎn)變成字段分割狀態(tài)或所述行結(jié)束狀態(tài),并結(jié)束出錯標(biāo)簽標(biāo)記功能,結(jié)束當(dāng)前行解析任務(wù),保存當(dāng)前行解析任務(wù)的解析結(jié)果及當(dāng)前行解析任務(wù)的解析結(jié)果在解析文件中的位置,保存當(dāng)前行解析任務(wù)中的原始數(shù)據(jù)及原始數(shù)據(jù)在原始文件中的位置。
2.如權(quán)利要求1所述的解析方法,其特征在于,所述當(dāng)所述當(dāng)前的字段解析狀態(tài)為所述字段結(jié)束狀態(tài)時,讀取下一個字符,若所述下一個字符不是字段分隔符或行結(jié)束符,則對所述當(dāng)前字符之后的字符進(jìn)行容錯處理包括:
當(dāng)所述當(dāng)前的字段解析狀態(tài)為所述字段結(jié)束狀態(tài)時,讀取所述下一個字符,若所述下一個字符為所述字段包括符,檢測所述待解析文件中是否有出錯標(biāo)簽;
若有所述出錯標(biāo)簽,則關(guān)閉容錯標(biāo)記功能,結(jié)束容錯處理;
若沒有所述出錯標(biāo)簽,則打開所述容錯標(biāo)記功能,在文件解析出錯的地方設(shè)置出錯標(biāo)簽,且所述當(dāng)前的字段解析狀態(tài)由所述字段結(jié)束狀態(tài)轉(zhuǎn)變成所述字段匹配狀態(tài)。
3.如權(quán)利要求1所述的解析方法,其特征在于,所述當(dāng)所述當(dāng)前的字段解析狀態(tài)為所述字段結(jié)束狀態(tài)時,讀取下一個字符,若所述下一個字符不是字段分隔符或行結(jié)束符,則對所述當(dāng)前字符之后的字符進(jìn)行容錯處理還包括:
當(dāng)所述當(dāng)前的字段解析狀態(tài)為所述字段結(jié)束狀態(tài)時,讀取所述下一個字符,若所述下一個字符為轉(zhuǎn)義字符或普通字符,則檢測所述待解析文件中是否有出錯標(biāo)簽;
若有所述出錯標(biāo)簽,則延長所述出錯標(biāo)簽的標(biāo)志范圍;
若沒有所述出錯標(biāo)簽,則打開容錯標(biāo)記功能,在文件解析出錯的地方設(shè)置所述出錯標(biāo)簽,且所述當(dāng)前的字段解析狀態(tài)由所述字段結(jié)束狀態(tài)轉(zhuǎn)變成所述字段匹配狀態(tài)。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于深圳市漢云科技有限公司,未經(jīng)深圳市漢云科技有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710020706.8/1.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。





