Java_socket程序学习02-一个客户端对一个服务器-客户端键盘输入
来源:互联网 发布:js注释快捷键 edit 编辑:程序博客网 时间:2024/06/05 04:28
//客户端可以键盘输入信息,然后输出到服务器点,如果输入的信息为bb,则推出服务器和客户端
服务器端程序。再myecplise中执行的。
package tcp;
import java.net.ServerSocket;
import java.net.Socket;
import java.io.IOException;
import java.io.*;
public class ServerCode {
public static int portNO = 3336;
ServerSocket s = new ServerSocket(portNO);
System.out.println("The Server is start"+s);
Socket socket = s.accept();
try{
System.out.println("Accept the Client: " + socket);BufferedReader in = new BufferedReader(new InputStreamReader(socket.getInputStream()));
//PrintWriter out = new PrintWriter(new BufferedWriter(new OutputStreamWriter(socket.getOutputStream())), true);
PrintStream out=new PrintStream(socket.getOutputStream());
while(true){
String str = in.readLine();
if(str.equals("bb")){
break;
}
//服务器端显示信息
System.out.println("Client's info:"+str);
//out.println向客户端打印信息
//out.println(str);
}
}finally{
System.out.println("close the Server socket and the io");
socket.close();
s.close();
}
} //main
}//ServerCode
这里与Java_socket程序学习01的区别在于把 //out.println(str) 屏蔽了,即不要把信息再给客户端发送。
客户端程序,是在cmd下执行的
//package tcp;
import java.net.*;
import java.io.*;
public class ClientCode01 {
/**
* @param args
*/
static String name = "ly";
static int portNo=3336;
public static void main(String[] args) throws IOException{
// TODO Auto-generated method stub
/*
* Socket类的构造方法有多种,以下列举出两个来
* 构造方法1
* Socket(InetAddress address, int port)
* 此构造方法第一个参数需要是InetAddress类的对象
* 构造方法2
* Socket(String host, int port)
*/
InetAddress addr = InetAddress.getByName("localhost");
Socket socket = new Socket(addr,portNo);
System.out.println("socket = " + socket);
//这里注释掉了socket输入流,就是不再接受服务器端发过来的输入流
//BufferedReader in = new BufferedReader(new InputStreamReader(socket.getInputStream()));
//这里实例化了键盘的输入流,
BufferedReader ins = new BufferedReader(new InputStreamReader(System.in));
PrintWriter out = new PrintWriter(new BufferedWriter(new OutputStreamWriter(socket.getOutputStream())), true);
out.println("My name isxxxxxxxx "+name);
//String str = in.readLine();
while(true){
//读取键盘的输入流信息
String str1 = ins.readLine();
//System.out.println(str1);
//将键盘的输入流信息打印给服务器
out.println(str1);
//判断输入流信息,不是bb继续次循环,如果是“bb”推出while循环执行客户端关闭,向服务器发送“bb”,
if(str1.equals("bb")){
break;
}
}
System.out.println("Client will be exit");
socket.close();
out.println("bb");
}
}
此程序完成了客户端键盘输入到服务器端的显示
- Java_socket程序学习02-一个客户端对一个服务器-客户端键盘输入
- Java_socket程序学习01-一个客户端对一个服务器
- Java_socket程序学习03-一个客户端对一个服务器-交互(客户端)--02
- Java_socket程序学习03-一个客户端对一个服务器-交互(服务器端)--01
- Java_socket程序学习04-一个服务器对多个一个客户端
- 【UNP学习笔记】一个简单的服务器/客户端程序
- 一个服务器多客户端
- “黑马程序员”使用TCP协议完成一个客户端一个服务器。客户端从键盘输入读取一个字符串,发送到服务器。 服务器接收客户端发送的字符串,反转之后发回客户端。客户端接收并打印
- 10、使用TCP协议完成一个客户端一个服务器。客户端从键盘输入读取一个字符串,发送到服务器。 服务器接收客户端发送的字符串,反转之后发回客户端。客户端接收并打印。
- 黑马程序员——使用TCP协议完成一个客户端一个服务器。客户端从键盘输入读取一个字符串,发送到服务器。 服务器接收客户端发送的字符串,反转之后发回客户端。客户端接收并打印。
- 搭建一个后台服务器--客户端
- 用Java实现一个简单的服务器与客户端程序
- 使用jrtplib写的一个简单服务器和客户端程序
- 用消息队列编写一个客户端服务器通信的程序
- 用Java实现一个简单的服务器与客户端程序
- Python一个简单的通信程序(客户端 服务器)
- VB中一个服务器和多个客户端的程序
- vsftp,做一个文件传输服务器和客户端程序
- vim tab设置为4个空格
- Oracle导出时,表内容为空的解决办法
- 刚更新的openwrt为什么会有.svn/文件夹
- 【myeclipse】myeclipse中如何导入mysql-connector-java-5.1.8-bin.jar包
- Ubuntu CCS6详细安装教程
- Java_socket程序学习02-一个客户端对一个服务器-客户端键盘输入
- 宅急送项目第五天笔记!
- EDate(日期)标签之日期加减
- 交叉编译: undefined reference to `rpl_malloc'
- 菜鸟学排序:折半插入排序
- Topcoder srm 653 div.2 1000 - SingingEasy(区间DP)
- 无法启动此程序,因为计算机中丢失msvcp100.dll。
- javaee学习之路(七)Servlet监听器
- 设计模式实践之旅——Singleton Pattern