Write a java program to display Date and Time of Server machine on client machine.
Server.java
import java.io.*;
import java.net.*;
import java.util.Date;
public class Server {
public static void main(String[] args) {
try {
// Create server socket on port 5000
ServerSocket server = new ServerSocket(5000);
System.out.println("Server started. Waiting for client...");
// Accept client connection
Socket socket = server.accept();
System.out.println("Client connected: " + socket.getInetAddress());
// Get current date and time
Date date = new Date();
// Send date and time to client
PrintWriter out = new PrintWriter(socket.getOutputStream(), true);
out.println("Server Date and Time: " + date.toString());
// Close connections
out.close();
socket.close();
server.close();
} catch (IOException e) {
System.out.println("Error: " + e.getMessage());
}
}
}
Client.java
import java.io.*;
import java.net.*;
public class Client {
public static void main(String[] args) {
try {
// Connect to server at localhost and port 5000
Socket socket = new Socket("localhost", 5000);
// Read date and time from server
BufferedReader in = new BufferedReader(new InputStreamReader(socket.getInputStream()));
String serverDateTime = in.readLine();
// Display on client console
System.out.println(serverDateTime);
// Close connection
in.close();
socket.close();
} catch (IOException e) {
System.out.println("Error: " + e.getMessage());
}
}
}