我谢了一个public void run(){
boolean tf=false;
try{
while(!tf){
Socket incoming = MySS.accept();
BufferedReader si = new BufferedReader(new InputStreamReader(incoming.getInputStream()));
String line = "";
char sc[]=new char[1050];
while(si.read(sc,0,1050) != -1){
line=String.valueOf(sc);
int wz=line.indexOf("Y*Y*Y*Y");//块标志
if(wz>0){
line=line.substring(0,wz);
if(!line.trim().equals("!MySendOver!")){
//不是结束标志,则输出
}
else{
//是结束命令,中断
tf=true;
break;
}
}
else{
if(!line.trim().equals("!MySendOver!")){
//不是结束标志,则输出
}
else{
tf=true;
break;
}
}
}
si.close();
incoming.close();
}
MySS.close();
MySS=null;
}catch(Exception e){}
}可是有时客户端报连接失败
怎么解决?
boolean tf=false;
try{
while(!tf){
Socket incoming = MySS.accept();
BufferedReader si = new BufferedReader(new InputStreamReader(incoming.getInputStream()));
String line = "";
char sc[]=new char[1050];
while(si.read(sc,0,1050) != -1){
line=String.valueOf(sc);
int wz=line.indexOf("Y*Y*Y*Y");//块标志
if(wz>0){
line=line.substring(0,wz);
if(!line.trim().equals("!MySendOver!")){
//不是结束标志,则输出
}
else{
//是结束命令,中断
tf=true;
break;
}
}
else{
if(!line.trim().equals("!MySendOver!")){
//不是结束标志,则输出
}
else{
tf=true;
break;
}
}
}
si.close();
incoming.close();
}
MySS.close();
MySS=null;
}catch(Exception e){}
}可是有时客户端报连接失败
怎么解决?
Thread thread = new Thread(new ThreadStart(receive));
其中receive()方法用到一个while(boolean check=true){//接收方法 }
试试吧,应该没有问题,我已经用过了,挺爽的!
同意的就顶吧!