80,351
社区成员
发帖
与我相关
我的任务
分享
try {
sb=new StringBuffer();
socket = new Socket(serverIP, port);
accStream = socket.getInputStream();
byte[] container=new byte[1024];
Log.d(TAG, "container.length="+container.length);
int byteNum;
while((byteNum=accStream.read(container))!=-1){
//如果读取的字节数比缓冲区的长度小,则需要截取
if(byteNum<container.length){
sb.append(new String(container,0,byteNum,"GBK"));
}
else {
sb.append(new String(container,"GBK"));
}
Log.d(TAG, byteNum+" bytes read");
}
String receivedStr=sb.toString()+"|";
data_tv.setText(receivedStr);
socket.close();
} catch (Exception e) {
Log.d(TAG, e.getMessage());
}
while (!done)
{
s = listener.AcceptSocket();
byte[] sendBytes = Encoding.Default.GetBytes("发送汉字");
try
{
s.Send(sendBytes, sendBytes.Length,0);
s.Close();
}
catch (Exception ee)
{
MessageBox.Show(ee.ToString());
}
}
try {
socket = new Socket(serverIP, port);
convertStream= new ByteArrayInputStream(send_text.getText().toString().getBytes("GB2312"));
sendStream = socket.getOutputStream();
byte[] container=new byte[1024];
int byteNum;
while((byteNum=convertStream.read(container))!=-1){
sendStream.write(container, 0, (byteNum<container.length?byteNum:container.length));
Log.d(TAG, byteNum+" bytes wrote");
}
sendStream.flush();
socket.close();
status_TV.setText("socket closed");
} catch (Exception e) {
Log.d(TAG, e.getMessage());
}
try
{
Console.WriteLine("init variables");
s = listener.AcceptSocket();
byte[] container = new byte[1024];
sb = new StringBuilder();
Console.WriteLine("start loop");
while ((byteNum = s.Receive(container)) != 0)
{
Console.WriteLine("looping");
if (byteNum < container.Length)
{
sb.Append(System.Text.Encoding.Default.GetChars(container), 0, byteNum);
}
else
{
sb.Append(container);
}
}
sb.Append("|");
Console.WriteLine("loop end");
Console.WriteLine("__________________" + sb.ToString() + "____________________");
s.Close();
}
catch(Exception e) {
Console.WriteLine(e.Message);
}