begin process at 2012 02 15 12:00:09
  Trouver un code source :
 
dans
 
Accueil > Forum > 

JAVA / J2EE / J2ME

 > 

Réseau & internet

 > 

JavaServerPage (JSP)

 > 

Lire fichier PDF


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Lire fichier PDF

vendredi 22 juin 2007 à 09:11:50 | Lire fichier PDF

leviz

Bonjour,

Voilà mon porblème:
Je dispose d'un tableau dans lequel j'affiche des liens vers des fichiers PDF stocker sur mon serveur. Je cherche à lire le flux du fichier et à l'afficher dans une nouvelle page. Mon problème est que j'arrive à lire le flux mais il m'affiche n'importe quoi, une suite de texte incohérente.

Voici mon code :


File fileToRead = new File(realPath + "\\export\\" + request.getParameter("ID") + "." + request.getParameter("TYPE"));

String fileType = fileToRead.getName().substring(fileToRead.getName().indexOf(".")+1,fileToRead.getName().length());
                if (fileToRead.exists()) {
                    try {
                        BufferedInputStream in = new BufferedInputStream(new FileInputStream(fileToRead));
                        OutputStream s_out = response.getOutputStream();


                        response.setContentLength((int)fileToRead.length());

                        if (fileType.trim().equalsIgnoreCase("log")) {
                            response.setContentType( "text/plain" );
                        }else if (fileType.trim().equalsIgnoreCase("edi")) {
                            response.setContentType( "text/plain" );
                        }else if (fileType.trim().equalsIgnoreCase("pdf")) {
                            response.setContentType( "application/pdf" );
                        }else {
                            response.setContentType( "application/octet-stream" );
                        }

                        //response.addHeader("Content-disposition", "inline; filename=" + fileToRead.getName());

                        int count;
                        byte[] bytes = new byte[128];
                        while ((count = in.read(bytes, 0, bytes.length)) != -1) {
                            s_out.write(bytes, 0, count);
                            count = in.read(bytes, 0, bytes.length);
                        }
                        in.close();
                        s_out.flush();
                        s_out.close();
                    }
                    catch (Exception e) {
                        LogWriter.add("readFile.jsp", e);
                    }


Es-ce que quelqu'un voit si j'ai fait une faute ou s'il me manque quelque chose??

Merci
vendredi 22 juin 2007 à 12:03:09 | Re : Lire fichier PDF

leviz

Réponse acceptée !
Rebonjour

J'ai trouvé la solution pour mon problème :  au lieu de mettre un BufferedInputStream, il faut mettre un simple InputStream et ça marche!!!

Voici le code corrigé :

File fileToRead = new File(realPath + "\\export\\" + request.getParameter("ID") + "." + request.getParameter("TYPE"));

                String fileType = fileToRead.getName().substring(fileToRead.getName().indexOf(".")+1,fileToRead.getName().length());
                if (fileToRead.exists()) {
                    try {
                        FileInputStream in = new FileInputStream(fileToRead);
                        OutputStream s_out = response.getOutputStream();

                        if (fileType.trim().equalsIgnoreCase("log")) {
                            response.setContentType( "text/plain" );
                        }else if (fileType.trim().equalsIgnoreCase("edi")) {
                            response.setContentType( "text/plain" );
                        }else if (fileType.trim().equalsIgnoreCase("pdf")) {
                            response.setContentType( "application/pdf" );
                        }else {
                            response.setContentType( "application/octet-stream" );
                        }

                        response.setContentLength((int)fileToRead.length());
                        response.addHeader("Content-disposition", "attachment; filename=" + fileToRead.getName());
                        response.setHeader("Cache-Control", "no-cache");

                        int read;
                        byte[] bytes = new byte[1024];
                        while ((read = in.read(bytes, 0, bytes.length)) != -1) {
                            s_out.write(bytes, 0, read);
                        }

                        in.close();
                        s_out.flush();
                        s_out.close();
                    }
                    catch (FileNotFoundException e) {
                        LogWriter.add("readFile.jsp", e);
                        e.printStackTrace();
                    } catch (IOException e) {
                        LogWriter.add("readFile.jsp", e);
                        e.printStackTrace();
                    }

J'espère que cela pourra en aidé certain d'entre vous!!

A+
vendredi 28 mars 2008 à 09:55:53 | Re : Lire fichier PDF

infogeni2003

merci bcp pour cet exemple!
ca ma bien aider...

Abbesinfo


Cette discussion est classée dans : lire, pdf, bytes, response, filetoread


Répondre à ce message

Sujets en rapport avec ce message

Lire des bytes avec Scanner [ par FiReTiTi ] Bonjour,je lis un fichier comme ceci avec la classe scanner :DV10 10 108¿?*???ΪÍË|Órhufeilzhfuilehgfqdsuflheziaulfhlzuf&é"'(§è!çà)Je parviens à lire lire un pdf avec itext [ par lostsouldark ] bonjour,voila mon probleme, je voudrais arriver, simplement, a ouvrir et afficher un pdf dans un jeditorpane par exemple. pas pour le modifier, ni cre Lire un fichier PDF (J2Me) [ par megacoolx ] Bonjour J'aimerais savoir s'il est possible de lire un fichier pdf dans mon application codée en J2ME. Je suis actuellement entrain de développer une Lire le contenu d'un pdf (contenant un code barre) avec itext [ par byob ] Bonjour, j'ai utilisé la lib d'itext pour creer un pdf avec un code barre : Document document = this.barCode.getDocument();            PdfWriter write Lire un pdf dans un package [ par Christopheinfo ] Bonjour à tous, Comme précise le titre, j'ai une application et je sais ouvrir un pdf avec, mais seulement en mettant le chemin complet.. Càd "C:\mo [HELP] lecture fichier binaire [ par gabule ] Bonjour, Je dois lire un fichier binaire. et le fichier biaire commence par une ligne. il me faut les donnees qu'il y a apres. Commen,t je fais pour s Composition Frame de SON [ par threadom ] Voila je suis un peu débutant dans le domaine du son.J'ai donc trouvé plusieur tutoriaux et ai désormais une bonne routine pour les sortie Audio. Cepe InputStream FileNotFoundException [ par kakol ] Bonjour,J'ai un petit soucis pour lire des fichiers distants.Voici un bout de mon code pour ouvrir le fichier en lecture :String doc = http://lo Lire un String ligne par ligne [ par ajan ] Bonjour,je suis en train de coder une sorte de traitement de texte. J'ai un fichier en entrée, je veux lui enlever ses lignes d'erreurs, puis utiliser PDF avec iText - outils formulaire [ par titeade ] Bonjour,Je suis en traine de faire un PDF avec iText et j'aurais voulu inserer des cases à cocher ainsi que des zones de textes de ce style |_|_|_|. Q


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 4,352 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales