SAX解析XML檔案有關characters的最大長度2048的問題
使用SAX解析XML檔案,我們都知道需要過載charaters方法
- @Override
- public void characters(char[] ch, int start, int length)
- throws SAXException
但是用這個方法會有一點問題,其中ch這個char陣列的預設最長長度為2048,如果超過這個長度,將產生一個新的char陣列(也是2048長度)來儲存資料,於是如果我們需要解析的資料在兩個char之間的話(分別在一個的尾部和下一個的頭部),那麼我將會得到殘缺不全的資料,因此我們當我們讀到char資料的末尾時,我們需要先暫時儲存一下得到的資料,然後補在下一次得到的內容的前面。參考程式碼如下:
- String preMaxLengthCharacters = "";
- final int CHARACTERS_MAX_LENGTH = 2048;
- String content = new String(ch, start, length);
- if (start + length == CHARACTERS_MAX_LENGTH) {
- preMaxLengthCharacters = content;
- }
- if (start == 0) {
- content = preMaxLengthCharacters + content;
- }
相關文章
- 關於SAX解析xml檔案的問題XML
- python 解析xml 檔案: SAX方式PythonXML
- Python解析xml大檔案(sax)PythonXML
- Sax 解析xml檔案時, 資料資訊不完整問題解決方法XML
- 請教高手關於解析xml檔案的問題 急~~XML
- XML解析-最快的方式SAXXML
- 關於FileDownloader檔案長度校驗的問題
- 有關*.properties檔案的問題
- java使用sax解析xmlJavaXML
- input最大長度限制問題
- python使用SAX解析xmlPythonXML
- XML解析的兩種方式DOM和SAXXML
- JAVA-使用SAX解析XML資料JavaXML
- Android系列--DOM、SAX、Pull解析XMLAndroidXML
- 解析xml 成bool的問題XML
- 有關jdom解析xmlXML
- jaxb輸出xml檔案的中文問題?XML
- 有關swoole+laravel 上傳檔案的問題Laravel
- 解決建立帶有NameSpace的XML檔案出現空白xmlns的問題namespaceXML
- jdom解析xml檔案XML
- GData解析XML檔案XML
- jquery 解析xml檔案jQueryXML
- 基於 DOM 的 XML 檔案解析類XML
- jQuery對xml檔案的解析例項jQueryXML
- 關於mysql varchar 型別的最大長度限制MySql型別
- 用Java結合SAX 2.0 解析XML文件 (轉)JavaXML
- 利用JAXP解析xml中遇到的問題XML
- xml問題請教:org.xml.sax.SAXParseException: Invalid encoding name "GBK".XMLExceptionEncoding
- 使用 Java 解析XML檔案JavaXML
- 利用Perl解析XML檔案XML
- C#解析XML檔案C#XML
- python XML 檔案解析PythonXML
- sra檔案下載及解析的問題
- jaxp的sax解析操作
- XML 檔案解析實踐 (DOM 解析)XML
- 讀取xml檔案 解析雙層xmlXML
- PHP-四種解析XML檔案的方法PHPXML
- sqlloader匯入資料_資料檔案的欄位超出最大長度SQL