1

我在一次采访中被问到这个问题,如果应用程序正在传输一些文本,例如客户端进行 http 调用并且在帖子正文中有一条文本消息,那么服务器端如何知道它何时收到完整的消息从头到尾。换句话说,如果你想计算这个文本流中的单词数,你怎么做呢?正常的字数计数是通过一种状态机的方法来完成的,在这种方法中,您可以跟踪空格并且对于 2 个单词之间的空格只增加一次。从流中计算单词有什么不同吗?如何 ?

4

1 回答 1

3

那么服务器端如何知道它何时从头到尾收到了完整的消息。

EOF 字符表示消息的结束,并且客户端通常会在完成后刷新并关闭流。这就是服务器如何知道来自客户端的传输已经结束。

从流中计算单词有什么不同吗?

无论文本的来源(无论是来自字符串变量还是来自流),确定单词数量的逻辑都将保持不变,除了来自字符串的输入在循环计数器达到长度时结束字符串,而在流中,它是停止循环的 EOF 字符。

于 2012-10-20T03:43:46.050 回答