我创建了一个简单的MUD客户端,最终设法连接到服务器。但是,我在输出窗口中收到了一堆无法识别的字符。
我已经突出显示了此屏幕截图中的一些字符。 我相信其中大部分是颜色代码,有些是超链接。有些甚至可能是换行符。
我认为服务器上的字符集是ASCII(可以由用户更改)。 以下是在我的客户端中显示文本的代码:
private void getDataFromServer() {
byte[] bytesToRead = new byte[client.ReceiveBufferSize];
int bytesRead = nwStream.Read(bytesToRead, 0, client.ReceiveBufferSize);
updateOutputWindow(Encoding.ASCII.GetString(bytesToRead, 0, bytesRead));
}
private void updateOutputWindow(string text) {
if (InvokeRequired) {
Invoke(new MethodInvoker(delegate () {
updateOutputWindow(text);
}));
}
else {
rtb_outputWindow.AppendText(text);
MessageBox.Show(text);
}
}
是否有可能以某种方式解释这些字符?