⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 quoteudpserver.java

📁 《Java TCP/IP应用开发详解》的部分源程序,开发环境为ECLIPSE3.1
💻 JAVA
字号:
package section20;

import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress;
import java.util.Date;



public class QuoteUDPServer {

	private static BufferedReader in;
	public static void main(String[] args) {
		DatagramSocket socket=null;
		
		DatagramPacket packet=null;
		boolean moreQuotes=true;
		System.out.println("QuoteUDPServer started...");
		try{
			socket=new DatagramSocket(1111);
			in=new BufferedReader(new FileReader("one-liners.txt"));
			
		}catch(FileNotFoundException e)
		{
			System.err.println("couldn't open file.");
			
			
		}catch(IOException e)
		{
			System.err.println(e.getMessage());
		}
while(moreQuotes)
{
	try{
		byte[]buf=new byte[256];
		packet=new DatagramPacket(buf,buf.length);
		socket.receive(packet);
		String data=null;
		if(in==null)
			data=new Date().toString();
		else
			data=getNextQuote();
		buf=data.getBytes();
		InetAddress address=packet.getAddress();
		System.out.println(address.getHostAddress());
		int port=packet.getPort();
		packet=new DatagramPacket(buf,data.length(),address,port);
		socket.send(packet);
		
	}catch(IOException e)
	{
		e.printStackTrace();
		moreQuotes=false;
	}
    }
    socket.close();
	}

    protected static String getNextQuote()
    {
    	String returnValue=null;
    	try{
    		if((returnValue=in.readLine())==null)
    		{
    			in.close();
    			returnValue="No more quotes.Goodbye.";
    		}
    	}catch(IOException e)
    	{
    		returnValue="IOException occurred in server";
    	}
    return returnValue;
    }


}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -