【问题标题】:Reading XML stream.读取 XML 流。
【发布时间】:2013-11-25 09:40:50
【问题描述】:

有人可以给我任何提示吗? 使用下面的代码,我可以读取数据,但我不知道我是否破坏了节点。

  for (;;) {
    bytes_received = recv ( socket_handle , input_buffer , 20000, 0 ) ;
    if ( bytes_received == -1 ) {
      printf ( "An error occured during the receive procedure \n" ) ;
      return 0 ;
    }
    if ( bytes_received == 0 ) break ;
    printf ( "%s" , input_buffer  ) ;
  }

我应该把它写成文件并使用其他语言来处理它吗? 或者我可以将它保存在 RAM 中并从那里处理吗? 用c来做合理吗?

【问题讨论】:

    标签: c stream


    【解决方案1】:

    使用 C 以流方式读取 XML 是完全合理的。您最可能想要的是所谓的SAX 解析器。看看libxmlSAX interface

    SAX 解析器的工作方式是在您读取它们时逐步向它们提供字节,例如一个插座。每次他们检测到一个元素被启动、一个文本被解析等时,他们都会调用一个回调函数,让您以增量方式处理 XML 流。

    【讨论】:

    • 文档似乎已损坏。我仍然阅读我自己的书,但希望使用图书馆。你能给我举个增量喂养的例子吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-04-25
    • 2018-03-08
    • 1970-01-01
    • 2013-07-16
    相关资源
    最近更新 更多