请问一下Socke 接收的有关问题

请教一下Socke 接收的问题
new Thread() {
public void run() {
System.out.println("Threadstart");
try {

socket = new Socket("10.10.100.254", 8899);

os = socket.getOutputStream();
pw = new PrintWriter(os);

is = socket.getInputStream();
br = new BufferedReader(new InputStreamReader(is));
socket_bool = true;
while (socket_bool) {
System.out.println(socket_bool);
try {
while (!((Socket_ReplyData = br.readLine()) == null)) {
System.out.println("接收的信息:"
+ Socket_ReplyData);
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

}

} catch (UnknownHostException e) {
e.printStackTrace();

} catch (IOException e) {

e.printStackTrace();
}

System.out.println("ThreadEnd");

}

}.start();

我的想法是建立socke 获得他的输入输出流后做一个while 循环 接收服务器发来的值 ,但是这样可以连接就是无法接收到数据,这样做不对吗?

------解决方案--------------------
首先帮顶,其次,我也菜鸟,但是你的服务端呢?
------解决方案--------------------
人家服务端可能需要对接数据包,服务端没收到有效的对接数据包则不给你返任何数据
------解决方案--------------------
Socket_ReplyData = br.readLine() 这是按照行读取,你要确保你的服务器是按行发送的 有\r\n这样的结束符。
建议你用 流的方式读取 ,不要用字符串行读取。
------解决方案--------------------
你可以用telnet命令看下有没有数据输出,再随便敲些字符试试,等同于往服务端发这些字符了。