JAVA网络通信编程实例

try {
			ServerSocket ss = new ServerSocket(8989);
			Socket s = ss.accept();
			OutputStream o = s.getOutputStream();
			PrintWriter p = new PrintWriter(o);
			p.write("中国科技大学");
			p.close();
			o.close();
			s.close();
			ss.close();
		} catch (Exception e) {
			e.printStackTrace();
		}

服务端创建绑定特定端口的服务器套接字

侦听并接受此套接字的连接

中间就是建立连接后的通信内容,实例为输出一段内容


InetAddress add = InetAddress.getByName("127.0.0.1");
		Socket sc = new Socket(add,8989);
		InputStream in = sc.getInputStream();
		BufferedReader reader = new BufferedReader(new InputStreamReader(in));
		System.out.println("^_^:"+reader.readLine());
		sc.close();

客户端,创建套接字,指定地址和端口,建立连接后,中间为网络通信内容,实例为读出通信内容。


以上是简单的IO通信,下面演示一个网络通信中传文件的实例

InputStream in = new FileInputStream( new File("D:\\workspace\\java\\src\\demo"+File.separator+"hello.txt"));
			byte buffer[]  = new byte[1024];
			int len = 0;
			OutputStream out = s.getOutputStream();
			while((len=in.read())!=-1) {
				out.write(buffer,0,len);
			}

服务端读一个文件并将其输出到OutputStream中,那么客户端就通过该流得到内容

InputStream in = sc.getInputStream();
		OutputStream out = new FileOutputStream("d:\\2.txt");
		byte buffer[]  = new byte[1024];
		int len = 0;
		while((len=in.read())!=-1) {
			out.write(buffer,0,len);
		}

sc.getInputStream()其实就是服务端OutputStream的内容














你可能感兴趣的:(JAVA网络通信编程实例)