IOS 5中的TCP客户端,前一个字符串的一部分仍然是NSStream

时间:2012-01-24 07:08:21

标签: ios caching tcp ios5 client

我非常沮丧,我在我的mac上运行了一个tcp服务器,我连接了几个设备。我想将我的iPhone连接到它,这样我就可以从我的iphone直接运行som命令到我的mac @ home。

我的iphone的tcp客户端工作得非常好,除了一个故障,似乎它没有清除我发送的每个字符串的输出流。这是我遇到问题的一个例子

  1. 我在我的iphone客户端上输入“启动我的浏览器”并点击发送
  2. 该消息在我的Mac上弹出,到目前为止一切正常
  3. 我想从我的iphone发送另一个命令并输入“B”并点击发送
  4. iphone上的输出将是“Btart my browser”
  5. 似乎它将前一个字符串保留在缓存中或其他内容。
  6. 有人有任何吸烟吗?我将非常感谢所有帮助,如果您需要查看我的任何代码,请发布一条消息说明,我会发布。

2 个答案:

答案 0 :(得分:0)

没有任何代码我只能猜测,但这看起来像是代码中处理字符串输入的错误。如果您使用NSMutableString / NSMutableData来存储输入,请确保在接受命令后清除该输入。现在看起来你只是覆盖了开头而没有先实际删除它。

答案 1 :(得分:0)

问题的根源是我的服务器软件没有清空数据流。当我在服务器端清空流时,它工作得很好。