我有一个如下所示的数据。
List<int> bytes: [231, 199, 287, 286, 305, 304, 351, 350, 246, 214, 252, 220, 13, 10];
我相信我必须使用 socket.add(bytes);但是我不确定这是否正确。
主要目标是不向服务器发送任何编码的字符串,看来我可以通过以字节发送来实现。
以上字节将替换为 IBM CP850 代码页(字节)。
示例:[231]将替换为[167]。我对此没有任何问题。
也有文档指出,如果此调用生成了错误,我需要使用flush并完成操作。
有人知道这个很好的例子吗?
注意:对于字符串,我使用以下代码。但是我需要修改代码以将字节发送到套接字。
_socket = await Socket.connect('192.168.22.120', 3000);
_socket.handleError((data) {
_secureResponse = "$_errorData}";
});
await for (var data in _socket) {
_reply = new String.fromCharCodes(data).trim();
int dataLen;
dataLen = _reply.length;
int carriageReturnPosition;
carriageReturnPosition = dataLen - 2;
int newLinePosition;
newLinePosition = dataLen - 1;
if (_reply.substring(carriageReturnPosition, newLinePosition) == '\r' &&
_reply.substring(newLinePosition, dataLen) == '\n') {
_socket.close();
}
}