Ciao. Sono nuovo
Ho un piccolo problema con il seguente esercizio:
Scrivere in C o Java un programma che:
1. apra una connessione verso l'IP 151.97.252.4, port 80
2. invii la stringa "GET /gp/prova/11.aux\n"
3. nello stream di byte ricevuti individui la prima parentesi quadra aperta
4. memorizzi tutti i successivi byte fino alla prima parentesi quadra chiusa, che il server invierà, in una variabile stringa denominata "s"
5. invii, sulla connessione già aperta, la stringa s (attenzione: dovrebbe terminare per "\n")
6. scriva i byte ricevuti in risposta sulla standard output

codice:
import java.net.*;
import java.io.*;

public class Client
{
 public static void main(String[] args) throws IOException
 {
  Socket R=null;


  BufferedReader IN=null;
  BufferedWriter out=null;
  PrintWriter OUT=null;

  try //avvio --------------------------------------------------------------------
  {
   R=new Socket("151.97.252.4", 80);

   System.out.println("Client is ON! --> "+ R);

   IN=new BufferedReader(new InputStreamReader(R.getInputStream())); 		//input
   out=new BufferedWriter(new OutputStreamWriter(R.getOutputStream()));
   OUT=new PrintWriter(out, true);
  }
  catch(Exception e)
  {
   e.printStackTrace();
   System.exit(1);
  }

  //invio richiesta -----------------------------------------------------------------
  String richiesta="GET /gp/prova/11.aux\n";
  try
  {
   OUT.println(richiesta);
   System.out.println("Richiesta inviata ...");
  }
  catch(Exception e)
  {
   e.printStackTrace();
   System.exit(1);
  }

  //ricevo file ....carattere per carattere ------------------------------------------------------
  String s="";
  boolean registra=false;  //inizia a memorizzare la frase tra le due [] in base a questa variabile

  try
  {
   int x=IN.read();

   while(x!=-1)   //si suppone che ci siano entrabe le parentesi e che "[" preceda "]"
   {
    char c=(char)x;
    if (x=='[') registra=true;
    if(registra) s=s+c;
    if(x==']') registra=false;
    x=IN.read();
   }
  }
  catch(Exception e)
  {
   e.printStackTrace();
   System.exit(1);
  }



  //invio risposta. Elimino le parentesi quadre ---------------------------------------------------
  String s1=s.substring(1, s.length()-2);

  try
  {
   OUT.println(s1+"\n");
   OUT.flush();
  }
  catch(Exception e)
  {
   e.printStackTrace();
   System.exit(1);
  }


  //ricevo risultato -------------------------------------------------------------------------------
  String s2="";
  try
  {
   int x=IN.read();

   while(x!=-1)
   {
    char c=(char)x;
    s2=s2+c;
    x=IN.read();
   }
   System.out.println("Risultato --> "+s2);
  }
  catch(Exception e)
  {
   e.printStackTrace();
   System.exit(1);
  }




  OUT.close();
  IN.close();

  R.close();
  System.out.println("FINE");

 } //fine main

} //fine Client
Le richieste 5 e 6 non vanno a buon fine e non capisco perchè...il server non mi manda nulla in risposta

Aiutatemi per favore...non so cosa fare e l'esame è molto vicino