Advertisement
Guest User

Untitled

a guest
Apr 27th, 2017
54
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.52 KB | None | 0 0
  1. import java.io.*;
  2. import java.net.*;
  3.  
  4. class UDPKilent{
  5.    public static void main(String args[]) throws Exception{
  6.  
  7.       BufferedReader inFromUser = new BufferedReader(new InputStreamReader(System.in));
  8.       DatagramSocket clientSocket = new DatagramSocket();
  9.       InetAddress IPAddress = InetAddress.getByName("localhost");
  10.  
  11.       byte[] sendData = new byte[1024];
  12.       byte[] receiveData = new byte[1024];
  13.  
  14.     //Leser inn tittel fra bruker
  15.       System.out.println("Skriv inn filtittel.");
  16.       String tittel = inFromUser.readLine();
  17.       sendData = tittel.getBytes();
  18.  
  19.       //Sender første melding
  20.       DatagramPacket sendPacket = new DatagramPacket(sendData, sendData.length, IPAddress, 9876);
  21.    
  22.       //FILEN
  23.       String fil = "";
  24.  
  25.       //Mottar filen
  26.       boolean ferdig = false;
  27.       String sekvensnummer = "0"; 
  28.       Boolean forste_sek = false;
  29.       String modifiedSentence  ="";
  30.  
  31.       while(ferdig !=  true){
  32.         
  33.          //Venter på ny server
  34.             do{
  35.                clientSocket.send(sendPacket);
  36.                DatagramPacket receivePacket = new DatagramPacket(receiveData, receiveData.length);
  37.                clientSocket.receive(receivePacket);
  38.                modifiedSentence = new String(receivePacket.getData());
  39.               
  40.               //Henter ut sekvensnummer
  41.               String sekvens_svar = modifiedSentence.substring(0,1);
  42.  
  43.               } while (!sekvens_svar.equals(sekvensnummer));
  44.  
  45.              // Forbered neste sekvensnummer
  46.             if(sekvensnummer.equals("0")){
  47.                sekvensnummer="1";
  48.             }else
  49.                sekvensnummer = "0";
  50.  
  51.          //Legger til linje i filen.
  52.         fil+=modifiedSentence.substring(1);
  53.         fil+='\n';
  54.                
  55.         //Skjekker om setningen inneholder ".", hopper ut av while om dette stemmer
  56.         if(modifiedSentence.contains(".")){
  57.             ferdig = true;
  58.         }
  59.         
  60.         //Sender sekvensnummeret tilbake til server
  61.         sendData = sekvensnummer.getBytes();
  62.         DatagramPacket sendPacket = new DatagramPacket(sendData, sendData.length, IPAddress, 9876);
  63.        
  64.  
  65.     }//Slutt while
  66.       System.out.println("FROM SERVER:" + fil);
  67.       clientSocket.close();
  68.     }
  69. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement