netipaddressdemo5.java

来自「java程序设计语言源代码」· Java 代码 · 共 61 行

JAVA
61
字号
//Example 5 of Chapter 9

import java.net.*;
import java.io.*; 

public class NetIpAddressDemo5 extends Thread
{
	private static Socket socket;
	public static void main( String[] args )
	{
		String hostname = "localhost";
		int port = 65;
		String s;
		if( args.length > 1 )
		{
			hostname = args[0];
			port = Integer.parseInt( args[1] );
		}
		try{
			InetAddress hostaddress = InetAddress.getByName( hostname );
			try{
				socket = new Socket( hostaddress, port );
				BufferedReader buf = new BufferedReader( 
					new InputStreamReader( socket.getInputStream(  ) ) );
				NetIpAddressDemo5 th = new NetIpAddressDemo5(  );
				th.start(  );
				while( ( s = buf.readLine(  ) ) != null )System.out.println( s );
				socket.close(  );
			}
			catch( IOException e )
			{
				System.out.println( e.toString(  ) );
			}
		}
		catch( UnknownHostException e )
		{
			System.out.println( e.toString(  ) );
		}
	}
	
	public void run(  )
	{
		String userInput;
		BufferedReader buf;
		PrintStream pstream;
		try{
			buf = new BufferedReader( new InputStreamReader( System.in ) );
			pstream = new PrintStream( socket.getOutputStream(  ) );
			while( true )
			{
				if( socket.isClosed(  ) ) break;
				userInput = buf.readLine(  );
				pstream.println( userInput );
			}
		}
		catch( IOException e )
		{
			System.out.println( e.toString(  ) );
		}
	}
}

⌨️ 快捷键说明

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