我做了一个客户端发送消息到服务器端,socket能连接上,但发送不了数据,不知为什么
解决方案 »
- java通过JDBC如何进行数据的批量DML?
- 紧急update求救!
- 简单问题,在线等答案 如下程序请高手解释输出结果
- 怎样从网页源代码中提取图片的路径?
- System.out.println()释疑
- 入门之前提个问
- 求教:java调用VB的activex dll的问题
- 看了大家关于JAVA工资的讨论,写点自己的感受!(可能对即将毕业的学生有用)
- 请各位大侠指明学习JAVA的步骤和方法,谢谢!该看什么资料?
- 那里有有关JAVAONE大会的中文网站或资料?请大家一起关注JAVAONE大会!!!!!!来者有分!!!
- 刚学习JAVA的String遇到一点小问题。求解释
- jdbc里怎么一次只从数据库读取一个数据而不是一行数据
}
每次只打印Client:aaa
没有打印Server:???
import java.io.*;
import java.net.*;
import java.util.Scanner;
public class TCPClient {
private static int sort=3434;
private static String host="localhost"; //本机ip地址
public static void main(String avg[]){
Scanner input = new Scanner(System.in);
BufferedReader br=null;
BufferedWriter wr=null;
Socket s =null;
try{
while(true){
System.out.print("客户端说:");
String line = input.nextLine();
if(line.equals("byb")) break;
s=new Socket(TCPClient.host,TCPClient.sort);
wr =new BufferedWriter(new OutputStreamWriter( s.getOutputStream()));
wr.write(line);
wr.close();
s.close(); //关闭会话
try { //暂停一会儿!
Thread.sleep(300);
} catch (InterruptedException e) {
e.printStackTrace();
}
s=new Socket(TCPClient.host,TCPClient.sort);
br =new BufferedReader(new InputStreamReader( s.getInputStream()));
System.out.print("接收端:");
int next=0;
StringBuffer li=new StringBuffer();
while((next=br.read()) != -1) li.append((char)next);
System.out.println(new String(li.toString()));
br.close();
s.close(); 关闭会话!
}
}catch(UnknownHostException e){
System.out.println("服务器连接失败");
e.printStackTrace();
}catch(IOException e){
e.printStackTrace();
}
}
}
//服务端 TCPServer
import java.io.*;
import java.net.*;
import java.util.Scanner;
public class TCPServer {
private static int sort=3434;
private static String host="localhost";
public static void main(String avg[]){
Scanner input = new Scanner(System.in);
Socket Suser1=null;
BufferedWriter wr=null;
BufferedReader br=null;
try{
ServerSocket Ser=new ServerSocket(TCPServer.sort);
while(true){
Suser1= Ser.accept();
br =new BufferedReader(new InputStreamReader( Suser1.getInputStream()));
System.out.print("接收端:");
int next=0;
StringBuffer li=new StringBuffer();
while((next=br.read()) != -1) li.append((char)next);
System.out.println(new String(li.toString()));
br.close();
Suser1.close(); //关闭会话
try { //暂停一会儿!
Thread.sleep(300);
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.print("服务端说:");
String line=input.nextLine();
if(line.equals("byb")) break;
Suser1= Ser.accept();
wr =new BufferedWriter(new OutputStreamWriter( Suser1.getOutputStream()));
wr.write(line);
wr.close();
Suser1.close(); //关闭会话
}
}catch(IOException e){
e.printStackTrace();
}
}
}