Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/58.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C 读取XML流。_C_Stream - Fatal编程技术网

C 读取XML流。

C 读取XML流。,c,stream,C,Stream,有人能告诉我怎么做吗? 使用下面的代码,我可以读取数据,但我不知道是否破坏了节点 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 ;

有人能告诉我怎么做吗? 使用下面的代码,我可以读取数据,但我不知道是否破坏了节点

  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以流式方式读取XML是完全合理的。您最可能需要的是所谓的
SAX
解析器。看一看这本书


SAX解析器的工作方式是,当您从套接字读取字节时,递增地向它们提供字节。每次他们检测到一个元素被启动,一个文本被解析等等。他们调用一个回调函数,让您以增量方式处理XML流。

文档似乎被破坏了。我仍然阅读我自己的,但希望使用图书馆。你能给我举个增量喂食的例子吗?