最近在写一个局域网聊天工具,普通richtxtbox发送文字没问题。后来导入了类似QQ表情的控件,于是乎,问题出来了,图片发送不了。
网上找了办法,说是用richtxtbox.rtf替代richtxtbox.Text。但是小弟整了好几天,依旧没法解决。祈求高手。接收数据代码:if (this.gifRichTextBox1.Text != "")
{
this.gifRichTextBox1.Text = gifRichTextBox1.Text + "\n" + this.TBIp.Text + ":" + msg.Substring(3) + " GetData";
}
else
{
this.gifRichTextBox1.Text = this.TBIp.Text + ":" + msg.Substring(3) + " GetData";
}
发送数据:
public void SendData(string m)
{
// string msg = this.gifRichTextBox2.Text;
string msg = m;
if (msg != "")
{
IPEndPoint pp = new IPEndPoint(IPAddress.Parse(i), port);
Socket client = new Socket(AddressFamily.InterNetwork,
SocketType.Dgram, ProtocolType.Udp);
try
{
client.Connect(pp); byte[] buff = Encoding.Default.GetBytes(msg);
client.Send(buff);
}
catch
{
client.Shutdown(SocketShutdown.Receive);
client.Close();
}
}
}
网上找了办法,说是用richtxtbox.rtf替代richtxtbox.Text。但是小弟整了好几天,依旧没法解决。祈求高手。接收数据代码:if (this.gifRichTextBox1.Text != "")
{
this.gifRichTextBox1.Text = gifRichTextBox1.Text + "\n" + this.TBIp.Text + ":" + msg.Substring(3) + " GetData";
}
else
{
this.gifRichTextBox1.Text = this.TBIp.Text + ":" + msg.Substring(3) + " GetData";
}
发送数据:
public void SendData(string m)
{
// string msg = this.gifRichTextBox2.Text;
string msg = m;
if (msg != "")
{
IPEndPoint pp = new IPEndPoint(IPAddress.Parse(i), port);
Socket client = new Socket(AddressFamily.InterNetwork,
SocketType.Dgram, ProtocolType.Udp);
try
{
client.Connect(pp); byte[] buff = Encoding.Default.GetBytes(msg);
client.Send(buff);
}
catch
{
client.Shutdown(SocketShutdown.Receive);
client.Close();
}
}
}
要对这些格式引入标记特殊处理
呵呵。我对richtextbox有进行重构,能显示gif图片的。就是数据发送问题。