構建輕量級XML DOM分析程式 3

2021-06-05 22:05:17 字數 1208 閱讀 2838

定義xml語法分析基本元素

為了把乙個xml檔案處理成為上面提到的簡化的dom樹模型,我們必須定義一些基本的語法分析規則。使用這些規則,語法分析程式就能容易地從輸入的xml檔案中提取標記或者文字塊。

第乙個是peek,從輸入的xml檔案中返回下乙個字元,而實際上則不必從下層流中獲得這個字元。通過保持輸入流的完整性,高階函式比如readtag和readtext(後面將介紹)可以更加容易地根據它們接下來期待的字元獲取需要的內容。

private int peek() throws ioexception    

下乙個方法是skipwhitespce,作用是跳過輸入的xml流中的空格、製表符或者回車符。

private void skipwhitespace() throws ioexception    

}

在建立了如上所述的這兩個方法後,我們就可以寫乙個函式從輸入檔案中檢索xml標記。

private string readtag() throws ioexception    

while (peek() != '>')    

return sb.tostring();   

}

和peek方法聯合使用,readtag函式只獲得乙個標記的內容,而讓別的函式去處理其他的內容。 最後的乙個方法是readtext函式,用來讀取xml標記之間的文字。

private string readtext() throws ioexception ;   

int cdata_end = ;   

stringbuffer sb = new stringbuffer();   

int next = new int[cdata_start.length];   

peek(next);   

if (compareintarrays(next, cdata_start) == true)  else    

}   

} else    

}   

return sb.tostring();   

}   

這次使用的peek方法是前面那個從基本的xml文件返回乙個字串序列的peek方法的變體。這個peek變體讓語法分析程式判斷它將分析的文字是否被裝入乙個cdata塊。 compareintarrays函式是乙個執行兩個整數陣列的深度比較的簡單程式。

XHProf php輕量級的效能分析工具

xhprof php輕量級的效能分析工具 其中有一篇野馬分享的 php效能檢測擴充套件 xhprof 不錯,之前就有聽說,這次就行動一下。xhprof是facebook開源出來的乙個php輕量級的效能分析工具,跟xdebug類似,但效能開銷更低,還可以用在生產環境中,也可以由程式開 關來控制是否進行...

輕量級OLAP資料分析工具發布

分析工具詳細介紹 基本資訊 使用者的資料展示需求是多種多樣的,我們的分析工具不能100 的滿足所有的展示需求。但是我們希望通過我們的分析工具的20 的 來滿足使用者資料展示的80 的需求,同時我們對剩下20 的需求提供自定義介面,允許使用者進行自定義開發。我們的分析工具是一套輕量級基於統計資料的資料...

輕量級開源小程式SDK發車啦

accesstoken自動傳參,無需顯式指定 方法引數改成類引數,並且支援通過特性校驗 引用對應的abp的nuget包 如果僅需某個支付,僅需引用該支付的包。下面以通聯支付為例,我們需要在工程中引用此包 新增模組依賴 在對應工程的abp的模組 abpmodule 中,新增對 wxminiprogra...