熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Java編程 >> Java核心技術 >> 正文

用Java編寫簡單的UDP網絡通信程序

2013-11-23 18:56:48  來源: Java核心技術 

  Java中封裝了大量的socket API為編寫網絡通信程序提供了極大的方便在計算機網絡的學習中大家都已熟練掌握了TCP/UDP的基本原理在此不在贅述僅給出接收端和發送端的源代碼供大家討論學習發送端代碼如下:
  
  import javaio*;
  import javalang*;
  import *;
  public class uclient
  {
  private DatagramSocket cli;
  private DatagramPacket pac;
  private byte sb[];
  private String sen;
  public uclient()
  {
  Init();
  }
  public void Init()
  {
  try
  {
  //指定端口號避免與其他應用程序發生沖突
  cli=new DatagramSocket();
  sb=new byte[];
  sen=UDP方式發送數據;
  sb=sengetBytes();
  pac=new DatagramPacket(sbsblength
  InetAddressgetByName(localhost));
  clisend(pac);
  }
  catch(SocketException se)
  {
  seprintStackTrace();
  }
  catch(IOException ie)
  {
  ieprintStackTrace();
  }
  }
  public static void main(String args[])
  {
  new uclient();
  }
  }
  
  接收端數據:
  
  import javaio*;
  import javalang*;
  import *;
  public class userve
  {
  private DatagramSocket ser;
  private DatagramPacket pac;
  private byte rb[];
  private String rev;
  public userve()
  {
  Init();
  }
  public void Init()
  {
  try
  {
  ser=new DatagramSocket();
  rb=new byte[];
  pac=new DatagramPacket(rbrblength);
  rev=;
  int i=;
  while(i==)
  //無數據則循環
  {
  serreceive(pac);
  i=pacgetLength();
  //接收數據
  if(i>)
  {
  //指定接收到數據的長度
  可使接收數據正常顯示開始時很容易忽略這一點
  rev=new String(rbpacgetLength());
  Systemoutprintln(rev);
  i=;//循環接收
  }
  }
  }
  catch(Exception e)
  {
  eprintStackTrace();
  }
  }
  public static void main(String args[])
  {
  new userve();
  }
  }
From:http://tw.wingwit.com/Article/program/Java/hx/201311/26023.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.