Lecture de fichiers et envoit du contenu par servlet

Lecture de fichiers et envoit du contenu par servlet - Java - Programmation

Marsh Posté le 30-04-2007 à 14:15:51    

Bonjour,
 
J'ai environs 6-7 fichiers textes relativement gros (de 100 à 10000 lignes).
J'aimerais qu'une servlet les lisent, les regroupes en un et envoit le texte sur le réseau.
 

Code :
  1. String fichier = "Monfichier.svg";
  2. String chaine="";
  3. String ligne="";
  4.                
  5. InputStream ips=new FileInputStream(fichier);
  6. InputStreamReader ipsr=new InputStreamReader(ips);
  7. BufferedReader br=new BufferedReader(ipsr);
  8. while ((ligne=br.readLine())!=null){
  9.         chaine+=ligne;
  10. }
  11. br.close();
  12. writeOut(chaine); //la servlet écrit sur le flux


 
Je fais ca pour tous les fichiers et ca met quand même pas mal de temps (8-10 sec)
 
Il faudrait que j'optimise ca au mieux. Existe il une méthode en java pour lire très rapidement un fichier qui devra être directement envoyé par une servlet à coup de "out.println"? Ou un autre moyen bcp plus rapide de lire des fichiers?
 

Reply

Marsh Posté le 30-04-2007 à 14:15:51   

Reply

Marsh Posté le 30-04-2007 à 22:43:09    

construire une String aussi longue, faudrait pas putot utiliser un StringBuffer ? J'sais pas du tout si ca optimise quoi que ce soit :D
Ah ouais et faire un readLine() c'est p'tet pas le plus rapide non plus si tu veux récupérer tout le fichier. Là encore je dis peut etre de grosses conneries, mais faire un read avec un buffer que tu gere toi même, ca ira ptet plus vite ?


Message édité par did-54 le 30-04-2007 à 22:47:25
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed