数据传输问题
import java.io.*;
import java.net.*;
import java.util.Arrays;
import com.slcs.view.Login;
public class AcceptData {
public String data1;
public AcceptData()
{
try {
ServerSocket server=new ServerSocket(12345);
System.out.println("正在监听12345端口......");
//保持阻塞,等待连接
Socket s=server.accept();
BufferedInputStream bis=new BufferedInputStream(s.getInputStream());
//向socket 写入数据
PrintWriter pw=new PrintWriter(s.getOutputStream(),true);
//接收从控制台接收的信息
InputStreamReader isr2=new InputStreamReader(System.in);
BufferedReader br2=new BufferedReader(isr2);
while(true)
{
byte[] data=new byte[1024];
int len=bis.read(data);
data1=new String(Arrays.copyOf(data,len));
System.out.println("接收到的数据:"+data1);
System.out.println("发出: "+br2.readLine());
pw.println(br2.readLine());
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
这是socket接收数据的代码,数据是源源不断的发来的,我的另外一个类需要用这里面的data1(这个类是用接收来的数据画图),但是这个会一直堵在while循环中,如果不用循环的话,就只能接收一次数据,这个要怎么处理啊,求高人帮忙改代码