JavaSE_网络编程_TCP_练习1
来源:互联网 发布:商品销售记账软件 编辑:程序博客网 时间:2024/06/06 07:41
客户端代码:
import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.io.PrintWriter;import java.net.Socket;import java.net.UnknownHostException;public class TCP_Client_Demo2 { public static void main(String[] args) throws UnknownHostException, IOException { /*方法说明: *练习1:(单线程)客户端键盘输入小写字母, *发送给服务端,服务端将字母转成大写字母, *再发回给客户端,客户端输入over结束转换! */ method_1(); } private static void method_1() throws UnknownHostException, IOException { /*整个思路: * 1,需要先有socket端点。 * 2,客户端的数据源:键盘。 * 3,客户端的目的:socket中的输出流(字节流). * 4,接收服务端的数据,源:socket。 * 5,将数据显示在打印出来:目的:控制台. * 6,在这些流中操作的数据,都是文本数据。 * 客户端: * 1,创建socket客户端对象。 * 2,获取键盘录入。 * 3,将录入的信息发送给socket输出流。 * 4,读取socket输入流并显示服务端发回的一行大写字母。 */ //1,创建socket客户端对象。 Socket s = new Socket("127.0.0.1",10004); //2,获取键盘录入。 BufferedReader bufr = new BufferedReader(new InputStreamReader(System.in)); //3,socket输出流。// new BufferedWriter(new OutputStreamWriter(s.getOutputStream())); //PrintWriter和True同在 PrintWriter out = new PrintWriter(s.getOutputStream(),true); //4,socket输入流,读取服务端返回的大写数据 BufferedReader bufIn = new BufferedReader(new InputStreamReader(s.getInputStream())); String line = null; while((line=bufr.readLine())!=null){ if("over".equals(line)) break; out.println(line); //读取并显示服务端发回的一行大写字母。 System.out.println(bufIn.readLine()); } s.close();//植入结束标记 }}
服务端代码:
import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.io.PrintWriter;import java.net.ServerSocket;import java.net.Socket;public class TCP_Server_Demo2 { public static void main(String[] args) throws IOException { method_1(); } private static void method_1() throws IOException { /* * 1,serversocket服务。 * 2,获取socket对象。 * 3,源:socket,读取客户端发过来的需要转换的数据。 * 4,目的:显示在控制台上。 * 5,将数据转成大写发给客户端。 */ ServerSocket ss = new ServerSocket(10004); //2,获取socket对象。 Socket s = ss.accept(); String ip = s.getInetAddress().getHostAddress(); System.out.println(ip+"......connected"); //3,获取socket读取流,并装饰。 BufferedReader bufIn = new BufferedReader(new InputStreamReader(s.getInputStream())); //4,获取socket的输出流,并装饰。PrintWriter和true同在 PrintWriter out = new PrintWriter(s.getOutputStream(),true); String line = null; while((line=bufIn.readLine())!=null){ System.out.println(line); out.println(line.toUpperCase()); } s.close(); ss.close(); }}
- JavaSE_网络编程_TCP_练习1
- JavaSE_网络编程_TCP_练习2_文本文件
- JavaSE_网络编程_TCP_练习3_图片
- JavaSE_网络编程_TCP_练习4_与浏览器和服务端交互
- JavaSE_网络编程_IP
- JavaSE_网络编程_UDP_1
- JavaSE_网络编程_UDP_2
- JavaSE_网络编程_TCP
- JAVASE_网络编程上
- JAVASE_网络编程下
- JavaSE_网络编程
- JavaSE_网络编程_URL类
- 黑马程序员——javaSE_网络编程
- NetWork网络_TCP_双向输出聊天
- 网络编程的练习1
- 网络编程的练习1
- vs2010 网络编程练习
- 网络编程练习-fcntl
- Ant安装于配置
- @class指令的使用
- paip.禁用IKAnalyzer 的默认词库.仅仅使用自定义词库.
- 【使用JSOUP实现网络爬虫】修改数据-设置属性的值
- LINUX 中Oracle 重建EM
- JavaSE_网络编程_TCP_练习1
- 后台管理界面设计案例
- Free report 免费开源报表
- 函数模板C++
- qt 翻译 语言家 国际化的使用
- 欧拉函数性质及介绍
- java线程的join基本用法
- leetcode: Median of Two Sorted Arrays
- LinuxKernel优秀博客