Enregistrement d'une page web dans un string

Contenu du snippet

Ce programme permet de charger une URL quelquonque très rapidement dans un String
Le code est garanti valide quelle que soit l'URL donnée
Libre à vous ensuite d'écrire le String dans un fichier si vous voulez faire un enregistrement de page.
Les données étant enregistrées dans un tableau de byte avant leur conversion en String, vous pouvez également récuperer des fichiers binaires (Il suffit d'enlever la partie Conversion du tableau en String)

Source / Exemple :


try
{
	int c = 0;
	URL u=new URL("tapez ici votre URL");
	HttpURLConnection conn = (HttpURLConnection)(u.openConnection());
	c=conn.getResponseCode();
	//Création du flux	
	InputStream flux= conn.getInputStream();
	BufferedInputStream bis = new BufferedInputStream(flux);
	int taille=conn.getContentLength();
	if (taille==-1) taille=100;
	byte[] donnees = new byte[taille]; 
	int octetsLus = 0;
	int deplacement = 0; 
	float alreadyRead = 0; 
	//Recopier les donnees
	while(deplacement < taille)
	{
		octetsLus = bis.read(donnees, deplacement, donnees.length-deplacement); 
		alreadyRead = alreadyRead + octetsLus; 
		if(octetsLus == -1) break; 
		deplacement += octetsLus; 		
	}
	//Conversion du tableau en String
	String monString=new String(donnees);
	//Fermeture des flux
	flux.close();	
	bis.close();	
}
catch(Exception e)
{
	System.out.println("ERREUR : "+e);
}

Conclusion :


Voila, avec l'ADSL, c quasi instantanné, j'ai pas essayé sur une connexion 56K
Si jamais ça ne marche pas, c que vous n'êtes pas connecté, ou que votre URL ne mene a rien
(Bon, si jamais il y a un bug quand même, faîtes le moi savoir)

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.