您的位置:首页 > 理论基础 > 计算机网络

简易tcp网络程序

2017-05-03 17:51 141 查看
服务端程序
import java.io.BufferedReader;import java.io.InputStreamReader;import java.net.ServerSocket;import java.net.Socket;public class MyTcp {private BufferedReader reader;private ServerSocket server;private Socket socket;void getsever(){try{server=new ServerSocket(8998);             //实例化socket对象System.out.println("服务器套接字已经建立");while(true){//等待客户机连接  若连接  则创建一个套接字socket=server.accept();//实例化BufferedReader对象reader=new BufferedReader(new InputStreamReader(socket.getInputStream()));getClientMessage();}}catch(Exception e){e.printStackTrace();}}private void getClientMessage(){try{       //看客户端是否连接成功while(true){//获得客户端信息System.out.println("客服机"+reader.readLine());}}catch(Exception e){e.printStackTrace();}try{if(reader!=null){reader.close();}if(reader!=null){socket.close();}}catch(Exception e){e.printStackTrace();}}public static void main(String[] args){MyTcp tcp=new MyTcp();tcp.getsever();}}
客户端程序import java.awt.BorderLayout;import java.awt.Container;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.io.PrintWriter;import java.net.Socket;import javax.swing.JFrame;import javax.swing.JScrollPane;import javax.swing.JTextArea;import javax.swing.JTextField;import javax.swing.border.BevelBorder;public class MyClient extends JFrame{/****/private static final long serialVersionUID = 9210355527389778458L;private PrintWriter write;Socket socket;private JTextArea ta=new JTextArea();private JTextField jf=new JTextField();Container c=getContentPane();public MyClient(String title){super(title);setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);final JScrollPane scrollPane=new JScrollPane();scrollPane.setBorder(new BevelBorder(BevelBorder.RAISED));c.add(scrollPane,BorderLayout.CENTER);scrollPane.setViewportView(ta);c.add(jf,"South");jf.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){write.println(jf.getText());ta.append(jf.getText()+"\n");ta.setSelectionEnd(ta.getText().length());jf.setText("");}});}private void connect97e6(){ta.append("尝试连接\n");try{socket=new Socket("127.0.0.1",8998);write=new PrintWriter(socket.getOutputStream(),true);ta.append("完成连接");}catch(Exception e){e.printStackTrace();}}public static void main(String[] args){MyClient client=new MyClient("向服务器送数据");client.setSize(500,500);client.setVisible(true);client.connect();}}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: