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