The Java Program: Finger.java
1 // Finger.jar -- Connect to a machine (first arg) using finger protocol
2
3 import java.net.Socket;
4 import java.net.UnknownHostException;
5 import java.io.PrintWriter;
6 import java.io.BufferedReader;
7 import java.io.InputStreamReader;
8 import java.io.IOException;
9
10 public class Finger {
11
12 final static int port = 79;
13
14 public static void main (String [] args) {
15
16 final String hostname = args.length>0?args[0]:"localhost";
17
18 try {
19 final Socket s = new Socket (hostname, port);
20 final PrintWriter pw = new PrintWriter (s.getOutputStream());
21 final BufferedReader in = new BufferedReader (
22 new InputStreamReader (s.getInputStream()));
23
24 for (int i=1; i<args.length; i++) {
25 pw.print (args[i]+ " ");
26 }
27 pw.print ("\r\n");
28 pw.flush();
29
30 for (;;) {
31 final String line = in.readLine();
32 if (line==null) break;
33 System.out.println (line);
34 }
35
36 s.close();
37 } catch (IOException e) {
38 e.printStackTrace (System.err);
39 }
40 }
41 }