在QTcpSocket中连续发送XML数据的最简单方法

Simplest way to continously send XML data in QTcpSocket

我必须连续 xml 从我的电脑向我的平板电脑发送数据。 (两者都是运行windows)

我的平板电脑应该会收到完整的 xml 文件并实时显示。

xml文件由每次发送的通知消息组成。 它是类型:

<notification>
<id>1</id>
<message>hello world</message>
</notification>

使用 QTcpSocket 最简单的方法是什么?

您只需接受所有数据并不断解析它。

假设您要查找两个标签之间的数据:

<notification>
      :
    data 
      :
</notification>

然后您将执行以下操作:

  • 继续读取任何传入的数据,直到看到第一个标签(我想您会认为之前的任何内容都是错误的)。

  • 获得开始标记后,打开文件并开始将所有数据存储到文件中并开始扫描结束标记。

  • 当您读入结束标签然后关闭文件并再次开始扫描开始标签(即回到开始状态)...

你只需要制作一个小状态机(可能只需要一个具有两种状态的变量:SCANNING_FOR_STARTSTORING_DATA_AND_SCANNING_FOR_END)。