-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathTCPClient.java
More file actions
executable file
·52 lines (40 loc) · 1.44 KB
/
Copy pathTCPClient.java
File metadata and controls
executable file
·52 lines (40 loc) · 1.44 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
/*
*
* client for TCPClient from Kurose and Ross
*
* * Usage: java TCPClient [server addr] [server port]
*/
import java.io.*;
import java.net.*;
public class TCPClient {
public static void main(String[] args) throws Exception {
// get server address
String serverName = "localhost";
if (args.length >= 1)
serverName = args[0];
InetAddress serverIPAddress = InetAddress.getByName(serverName);
// get server port
int serverPort = 6789;
//change above port number if required
if (args.length >= 2)
serverPort = Integer.parseInt(args[1]);
// create socket which connects to server
Socket clientSocket = new Socket(serverIPAddress, serverPort);
// get input from keyboard
String sentence;
BufferedReader inFromUser =
new BufferedReader(new InputStreamReader(System.in));
sentence = inFromUser.readLine();
// write to server
DataOutputStream outToServer = new DataOutputStream(clientSocket.getOutputStream());
outToServer.writeBytes(sentence + '\n');
// create read stream and receive from server
BufferedReader inFromServer = new BufferedReader(new InputStreamReader(clientSocket.getInputStream()));
String sentenceFromServer;
sentenceFromServer = inFromServer.readLine();
// print output
System.out.println("From Server: " + sentenceFromServer);
// close client socket
clientSocket.close();
} // end of main
} // end of class TCPClient