有時,我必須根據 xsd 檔案檢查一些大 xml 檔案的有效性。我收到的最大 xml 檔案大小接近 1.5GB。
xmllint
佔用了我所有的 RAM 和幾乎所有的交換空間,總記憶體使用量為 18GB。因此,驗證過程持續了 24 小時。
我的問題:是否有替代方法可以xmllint --schema
消耗更少的內存,也許利用一些流功能而不是將文件加載到內存中?
答案1
答案2
在我的 Linux 系統的包庫中我找到了 xmlcopyeditor。我用它來檢查 XML 文件以及編輯它。手冊頁聲稱它可以執行“DTD/XML Schema/RELAX NG 驗證、XSLT、XPath、漂亮打印、語法突出顯示、折疊、標籤完成/鎖定、拼寫/樣式檢查以及在 Windows 上的 Microsoft 無損導入/導出” Word文件."但我確實還沒有測試過它的效果如何。我確實知道,只有開始標籤和結束標籤正確匹配後,漂亮的列印才會起作用。 http://xml-copy-editor.sourceforge.net/