Javasocket入门编程实例
文章作者 100test 发表时间 2007:07:12 11:43:58
来源 100Test.Com百考试题网
例子是学习编程的法宝。你在学习java Socket 吗?看看下面的这个例子吧!
实现Client端功能的ClientApp.java原文件:
import java.net.*. import java.io.*. import java.lang.*.
public class ClientApp { public static void main(String args[]) { try { //创建通讯并且和主机Rock连接 Socket cSocket=new Socket("192.168.100.188",8018). //打开这个Socket的输入/输出流 OutputStream os=cSocket.getOutputStream(). DataInputStream is=new DataInputStream(cSocket.getInputStream()).
int c. boolean flag=true.
String responseline.
while(flag) { //从标准输入输出接受字符并且写如系统 while((c=System.in.read())!=-1) { os.write((byte)c). if(c== \n ) { os.flush(). //将程序阻塞,直到回答信息被收到后将他们在标准输出上显示出来 responseline=is.readLine(). System.out.println("Message is:" responseline). } } } os.close(). is.close(). cSocket.close().
} catch(Exception e) { System.out.println("Exception :" e.getMessage()). } } } |
实现Server端功能的ServerApp.java原文件:
import java.net.*. import java.io.*.
public class ServerApp { public static void main(String args[]) { try { boolean flag=true. Socket clientSocket=null. String inputLine. int c.
ServerSocket sSocket=new ServerSocket(8018). System.out.println("Server listen on:" sSocket.getLocalPort()).
while(flag) { clientSocket=sSocket.accept(). DataInputStream is= new DataInputStream(new BufferedInputStream(clientSocket.getInputStream())). OutputStream os=clientSocket.getOutputStream().
while((inputLine=is.readLine())!=null) { //当客户端输入stop的时候服务器程序运行终止! if(inputLine.equals("stop")) { flag=false. break. } else { System.out.println(inputLine).
while((c=System.in.read())!=-1) { os.write((byte)c). if(c== \n ) { os.flush(). //将信息发送到客户端 break. } } }
} is.close(). os.close(). clientSocket.close().
} sSocket.close(). } catch(Exception e) { System.out.println("Exception :" e.getMessage()). } } } |
src="/java/js/wxgg_java.js">