在 GTK 应用程序中,我使用xmlParseFile()
的是 libxml2。但是,该函数只能读取本地文件。我怎样才能让它使用 GIO 框架,以便它也可以读取远程文件?
最简单的方法可能是使用类似g_file_load_contents()
的方法将整个文件读入内存,然后调用xmlParseMemory()
解析它。但是,我正在寻找一种“更好”的解决方案,它可以理想地流式传输数据(以避免将整个数据保存在内存中);可能通过将 a 连接GInputStream
到 libxml2?
欢迎使用代码示例。我猜这是一个常见的用例,因此在这里收集一份详尽的良好实现列表可能会很有用。