C#将字符转义为delphi



我正在尝试将.net中的一些应用程序转换为delphi

但我的工具不起作用,所以我不知道这是正确的方法还是没有

这是c#的代码

websocket.Send("hello servernx00");
websocket.Send("1 guestnx00");
websocket.Send("0 0 -nx00");

这是delphi代码(我的尝试)

  WSClient1.SendText('hello server'+ #13 + #10 + #0);
  WSClient1.SendText('1 guest'+ #13 + #10 + #0);
  WSClient1.Sendtext('0 0 -' + #13 + #10 + #0);

但我没有得到我想要的回应。。在c#中,它用"fileno"字符串返回结果,但在我的工具中,我从来没有看到它只是另一个字符串(字符串只是关于服务器的信息)

n转义序列表示"新行"。它在未转义的字符串中表示为单个#10字符(ASCII代码10),而不是CR/LF对。

其次,C#代码中字符串上的x00终止序列很可能是Send()neneneba API所需要的,因为C#中的字符串本质上不是空终止的。如果是这种情况,那么您根本不需要在Delphi代码中包含这个null。在Delphi中,字符串已经以null结尾。

所以你所需要做的就是(例如):

WSClient1.Send('hello fcserver'+ #10);

我应该补充一点,如果没有涉及WSClient1对象和Send()方法的精确细节,后一种关于终止null字符的观察结果可能被证明是不正确的,但我非常相信它是准确的。

相关内容

  • 没有找到相关文章

最新更新