Ajouter un commentaire

Jgugliel

Merci d'avoir essayé!

Ta solution marche bien effectivement. Néanmoins je préfère manipuler le BufferedReader, ça me permettait de renvoyer directement un String.
J'ai donc continué aujourd'hui mes investigations. En fait, il semble qu'avec ton premier bout de code, le fichier pour cette requête se télécharge en boucle... il arrive à la fin et recommence, coincé dans le while.
J'ai donc rajouté une condition et ça semble mieux marcher. En effet j'ai remarqué que les fichiers se terminent tous par la même série de caractères.

Pour ta curiosité, ça donne ça :

    InetSocketAddress isa = new InetSocketAddress("eutils.ncbi.nlm.nih.gov", 80);
    Socket s = new Socket();
    s.connect(isa);

    InputStreamReader isr = new InputStreamReader(s.getInputStream());
    BufferedReader in = new BufferedReader(isr);

    DataOutputStream out = new DataOutputStream(s.getOutputStream());
    out.writeBytes("GET " + url + " HTTP/1.0\r\n\r\n");

    String responseLine;
    StringBuffer response = new StringBuffer();

    while ( (responseLine = in.readLine()) != null) {
      response.append(responseLine + "\n");
      if (response.toString().endsWith("//\n\n")) {
        break;
      }
    }

    in.close();
    s.close();
    String responseString = response.toString();

    return (responseString);
  }

J'ai l'impression que ça fonctionne bien. Je teste ça...

Julien

Filtered HTML

Plain text

CAPTCHA
Cette question permet de vérifier que vous n'êtes pas un robot spammeur :-)
  QQQ    BBBB   N   N  BBBB   V     V 
Q Q B B NN N B B V V
Q Q BBBB N N N BBBB V V
Q QQ B B N NN B B V V
QQQQ BBBB N N BBBB V
Q