<%@ page contentType="text/html; charset=gb2312"%> 用java实现nc功能实例
网站公告:   ◆北天JAVA技术网热情为java爱好者服务,本网内容包括JAVA(JSP、servlet、EJB、webservice、j2ee、javabean、应用服务器、JavaScript),数据库(MYSQL、SQL Server、Sybase、Oracle、DB2、数据库综合知识),设计研究(设计模式、Struts、Spring、Hibernate、设计框架、设计综合知识),WEB2.0新技术(主要介绍AJAX),以及各种技术的入门、实例、例子等等,欢迎各位多来坐坐!◆  诚邀各位JAVA爱好者加盟!◆  本网站内容丰富,更新快,保证每周20篇以上!  
加入收藏
设为首页
联系站长
承接项目
  相关资源:网站首页 | 免费培训学院 | 技术论坛 | JAVA聊天室 | 作家专栏 | 开发工具 | 认证考试 | 会员俱乐部
  JAVA技术初学者园地 | jsp与servlet | javascript | Java源代码 | EJB | web service | 应用服务器 | JAVA综合知识
  设计研究设计模式 | 设计框架 | Struts | Spring | Hibernate | 开源项目 | 面向对象设计 | 设计综合知识
  数 据 库MYSQL | SQL Server | Sybase | Oracle | DB2 | Informix | Access | 数据库综合知识
  其他资源:AJAX新技术 | 网站开发 | ERP软件 | OA办公软件 | 商业智能BI | 开发综合知识 | 承接项目 | 项目试用

 
 
用java实现nc功能实例
     发布者: 发布时间:2007-11-26
/*socket编程实例一个用java实现nc的功能的小例子请各位高手指教:shengshuai@126.com*/import java.net.*;import java.io.*;import javax.swing.event.*;import javax.swing.*;import java.awt.*;import java.awt.event.*;import javax.swing.UIManager;import javax.swing.plaf.metal.MetalLookAndFeel;public class fs{public fs(){fsframe Frame1 = new fsframe();Frame1.validate();Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();Dimension frameSize = Frame1.getSize();if (frameSize.height > screenSize.height){frameSize.height = screenSize.height;}if (frameSize.width > screenSize.width){frameSize.width = screenSize.width;}Frame1.setLocation((screenSize.width - frameSize.width)/2,(screenSize.height - frameSize.height)/2);//Frame1.setlocation(0,0);Frame1.setDefaultCloseOperation(3);Frame1.show();}public static void main(String[] args){try{UIManager.setLookAndFeel("javax.swing.plaf.metal.MetalLookAndFeel");}catch(Exception e){e.printStackTrace();}new fs();}}class fsframe extends JFrame{String indata = null;DataInputStream in;DataOutputStream out;Socket conn;JLabel la = new JLabel("请输入:");JButton lianjie = new JButton("连接");JButton act = new JButton("执行");JTextField hostfield = new JTextField("www.126.com",10);JTextField portfield = new JTextField("80",2);JTextArea log = new JTextArea(10,0);JTextArea input = new JTextArea(4,0);JPanel contorlpanel = new JPanel();JPanel inputPanel = new JPanel();JScrollPane logscrollpane = new JScrollPane();JScrollPane inputsrollpane = new JScrollPane();public fsframe(){setSize(Toolkit.getDefaultToolkit().getScreenSize().width/2,380);try{this.setResizable(false);this.getContentPane().setLayout(new BorderLayout());this.setBackground(Color.red);log.setText("");log.setEditable(false);logscrollpane.getViewport().add(log);this.getContentPane().add(logscrollpane,BorderLayout.NORTH);contorlpanel.setLayout(new FlowLayout());contorlpanel.add(la);contorlpanel.add(hostfield);contorlpanel.add(portfield);contorlpanel.add(lianjie);contorlpanel.add(act);this.getContentPane().add(contorlpanel,BorderLayout.CENTER);inputsrollpane.getViewport().add(input);this.getContentPane().add(inputsrollpane,BorderLayout.SOUTH);lianjie.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){String host = hostfield.getText();int port = Integer.parseInt(portfield.getText());if(host.equals("")||(portfield.getText().equals("")))JOptionPane.showMessageDialog(null, "主机和端口为空!");log.append("正在连接……\n");try{conn = new Socket(InetAddress.getByName(host),port);in = new DataInputStream(conn.getInputStream());out = new DataOutputStream(conn.getOutputStream());log.append("已经连接至主机"+host+"端口:"+port+"\n");//while((indata=in.readLine())!="") log.append(indata);}catch(UnknownHostException un){log.append("UnknownHostException:"+un+"\n");JOptionPane.showMessageDialog(null, un);}catch(IOException iod){log.append("IOException:"+iod+"\n");JOptionPane.showMessageDialog(null,iod);}}});act.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent ac){try{log.append(input.getText()+"\n");out.writeBytes(input.getText());out.writeBytes("\n");input.setText("");if((indata=in.readLine())!="") log.append(indata);}catch(IOException iod){log.append("IOException:"+iod+"\n");JOptionPane.showMessageDialog(null,iod);}}});}catch(Exception e){log.append("Exception"+e);}}}
(转载文章请保留出处:北天JAVA技术网(www.java114.com))
 
更多精彩文章:
用Java的加密机制来保护你的数据
线程堆:给你的线程命名,察看你的系统
修正Java中wait方法超时语意模糊性的一种方案
排序对象
Java线程简介--进阶学习
Java Thread应该注意的问题
 
最近评论:
        
冰封的往事!
wow power leveling,wow gold,WoW Gold,wow gold max(7452)
        
飞舞的传奇!
传世私服,传世私服.传奇世界私服传奇世界私服,传世私服传世私服, 传奇世界私服传奇世界私服.传奇私服传奇私服. max(3366)
        
标 题:   
内 容:   
 
                                  
 
免责声明:该文章由网友发表,如果对您造成侵权,请联系站长

首页 - 承接项目 - 网站地图 - 联系我们 -
版权所有北天JAVA技术工作室 ICP证号:粤ICP备06079815号