我想在我的IdTcpServer上使用Indy10中的AContext.Connection.IOHandler.ReadLn,但我不知道如何使用ByteEncoding参数。客户端必须发送WideString还是AnsiString?
如果你掌控客户端和服务器端的代码,那么你可以决定客户端发送文本时使用哪种具体编码(UTF-8是一个不错的选择),然后相应地编写服务器端代码。Indy默认为ASCII,但你可以更改它。但是,如果你无法掌控客户端代码,则需要找出客户端实际使用的编码方式,以便你可以相应地编写服务器端代码。不要盲目做出假设,要找出实际使用的编码方式。
这篇文章
的最后一段将会回答你的问题。 - TLamaTIdTextencoding.UTF8
可能找不到。还有其他想法吗? - BenTIdTextEncoding
类型在IdGlobal.pas
单元中定义。 - TLama