Hi,

I am trying to write a java program for a client server instant messaging system using UPD datagram. I am trying to think of how to start. Anyone has any suggestions? Please advise

Recommended Answers

All 7 Replies

Hi !!! I built a program for msg transfer in java using udp.

//udp server
import java.net.*;
import java.io.*;
class Server
{
    public static void main(String args[])throws IOException
    {
        byte b[]=new byte[1024];
        DatagramSocket ds=new DatagramSocket(5001);
        DatagramPacket dp=new DatagramPacket(b,1024);

        //System.out.println("receiving");
        ds.receive(dp);
        String str=new String(dp.getData(),0,dp.getLength());   
        //receive file name
        System.out.println("Received file "+str);
        FileReader fr=new FileReader(str);
        BufferedReader br1=new BufferedReader(fr);
        while((str=br1.readLine())!=NULL)
        {
            b=str.getBytes();
            ds.send(new DatagramPacket(b,b.length,InetAddreass.getLocalHost(),5000));
        }
        ds.close();
    }
}   



            //udp client

import java.net.*;
import java.io.*;
class Client
{
    public static void main(String args[])throws IOException
    {
        byte b[]=new byte[1024];
        DatagramSocket ds=new DatagramSocket(5000);
        DatagramPacket dp=new DatagramPacket(b,1024);
        DataInputStream dis=new DataInputStream(System.in);
        System.out.println("Enter file name\n");
        String str1;
        str1=dis.readLine();
        b=str1.getBytes();
        ds.send(new DatagramPacket(b,b.length,InetAddress.getLocalHost(),5001));
        System.out.println("Contents of file:"+str1+"\n");
        while(str1!=NULL)
        {
            ds.receive(dp);
            str1=new String(dp.getData(),0,dp.getLength());//receive file contents
            System.out.println(str1);
        }
        ds.close();
    }
}

@ashu_305 congratulation on your program, just shame you are about 4 year too late...

PS: Next step in your messaging service would be perhaps some GUI and use of threads. Good luck

How to establish the connection between two hosts through socket programming(TCP) in java.

hi

Iwant simple code chat in java

str1=new String(data,0,data.Length()) why the zero is used in the string function please explain me the what this line says???

Closing ages old post that gets bumped once in a while...

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.