在GTK應用程序中,我使用libxml2中的xmlParseFile()
。但是,該功能只能讀取本地文件。我怎樣才能讓它使用GIO框架,以便它可以讀取遠程文件?如何使用libxml2解析來自GInputStream(GLibGIO/GVFS)的數據?
最簡單的方法可能是使用類似g_file_load_contents()
的內容將整個文件讀入內存,然後調用xmlParseMemory()
來解析該文件。然而,我正在尋找一個「更好的」解決方案,理想的是對數據進行流式傳輸(以避免將整個數據保存在內存中);可能通過將GInputStream
連接到libxml2?
歡迎使用代碼示例。我猜這是一個常見的用例,因此在這裏收集一個詳盡的實現列表可能會有用。