0% found this document useful (0 votes)
7 views3 pages

JPR Practical 26 Programs

The document contains Java programs for a chat application using DatagramPacket and DatagramSocket, with separate client and server implementations. The client sends messages to the server and receives responses until 'Bye' is typed, while the server listens for messages and responds accordingly. Additionally, it includes a file transfer program that copies the contents of one file from the client to the server using UDP sockets.

Uploaded by

adityapandji1
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
7 views3 pages

JPR Practical 26 Programs

The document contains Java programs for a chat application using DatagramPacket and DatagramSocket, with separate client and server implementations. The client sends messages to the server and receives responses until 'Bye' is typed, while the server listens for messages and responds accordingly. Additionally, it includes a file transfer program that copies the contents of one file from the client to the server using UDP sockets.

Uploaded by

adityapandji1
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 3

JPR Practical 26:

Programs:
Q. 3 Write a program using DatagramPacket and DatagramSocket to create chat application.
Client Side :
import java.io.*;
import java.net.*;
class UDPClient
{
public static DatagramSocket clientsocket;
public static DatagramPacket dp;
public static BufferedReader dis;
public static InetAddress ia;
public static byte buf[] = new byte[1024];
public static int cport = 1789, sport = 1790;
public static void main(String[] a) throws IOException
{
clientsocket = new DatagramSocket(cport);
dp = new DatagramPacket(buf, buf.length);
dis = new BufferedReader(new InputStreamReader(System.in));
ia = InetAddress.getLocalHost();
System.out.println("Client end... Type 'Bye'to Quit");
while(true)
{
String str = new String(dis.readLine());
buf = str.getBytes();
if(str.equals("Bye"))
{
System.out.println("Terminated...");
clientsocket.send(new DatagramPacket(buf,str.length(), ia,sport));
break;
}
clientsocket.send(new DatagramPacket(buf,str.length(), ia, sport));
clientsocket.receive(dp);
String str2 = new String(dp.getData(), 0,dp.getLength());
System.out.println("Server: " + str2);
}
}
}
Server Side :
import java.io.*;
import java.net.*;
class UDPServer
{
public static DatagramSocket serversocket;
public static DatagramPacket dp;
public static BufferedReader dis;
public static InetAddress ia;
public static byte buf[] = new byte[1024];
public static int cport = 1789,sport=1790;
public static void main(String[] a) throws IOException
{
serversocket = new DatagramSocket(sport);
dp = new DatagramPacket(buf,buf.length);
dis = new BufferedReader(new InputStreamReader(System.in));
ia = InetAddress.getLocalHost();
System.out.println("Server is Running...");
while(true)
{
serversocket.receive(dp);
String str = new String(dp.getData(), 0,dp.getLength());
if(str.equals("Bye"))
{
System.out.println("Terminated...");
break;
}
System.out.println("Client: " + str);
String str1 = new String(dis.readLine());
buf = str1.getBytes();
serversocket.send(new DatagramPacket(buf,str1.length(), ia, cport));
}
}
}
Q. 4 Write a program using DataGramPacket and DataGramSocket to copy the contents of one file
into other.
Client side
import java.net.*;
import java.io.*;
public class client
{ public static void main(String args[])throws Exception
{
byte b[]=new byte[1024];
FileInputStream f=new FileInputStream("F:/raj.txt");
DatagramSocket dsoc=new DatagramSocket(2000);
int i=0;
while(f.available()!=0)
{
b[i]=(byte)f.read();
i++;
}
f.close();
dsoc.send(new DatagramPacket(b,i,InetAddress.getLocalHost(),1000));
System.out.println("Copying file to server...");
} }
Server Side
import java.net.*;
import java.io.*;
public class server
{
public static void main(String args[])throws IOException
{
byte b[]=new byte[3072];
DatagramSocket dsoc=new DatagramSocket(1000);
FileOutputStream f=new FileOutputStream("F:/abc.txt");
DatagramPacket dp=new DatagramPacket(b,b.length);
dsoc.receive(dp);
f.write(dp.getData());
System.out.println("file copied to server...");
f.close();
}
}

You might also like