Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2006
    Messaggi
    7

    [java] Problema recupero file

    Ciao a tutti,
    vi spiego il mio problema di cui non riesco a venirne a capo: ho un progetto in java in cui vengono salvati dei documenti (per la precisione file .pdf) al seguente path

    NomeProgetto/WebContent/resources/documents/nome_file.pdf

    ora io dovrei recuperare da codice questi file e accedervi in lettura (per la precisione dovrei estrarne il testo contenuto...). Ho provato in tutti i modi (metodo getResourceAsStream(), getResource() ecc..) ma mi viene sempre restituito NULL. Come posso fare per recuperare quei file? Qualcuno sa darmi qualche idea?

    Grazie.

  2. #2
    Direi che questo che ti mostro sotto, sia un modo per poter leggere il contenuto del tuo file .pdf

    codice:
    File fileInput=new File("documento.pdf");
    FileInputStream fileInputStream=new FileInputStream(fileInput);
    InputStreamReader inputStreamReader=new InputStreamReader(fileInputStream); BufferedReader bufferReader=new BufferedReader(inputStreamReader);
    String linea=bufferReader.readLine();
    
    while(linea!=null) {
          System.out.println(linea);
          linea=bufferReader.readLine();
    }

  3. #3
    Non capisco se il problema è dovuto al recupero del file (quindi al path) o alla lettura dei suoi contenuti.
    Nel secondo caso ti consiglio di affidarti a qualche API del caso, per esempio iText o PDF Box.
    "Na' sedia te vojo tirà!"

  4. #4
    Utente di HTML.it
    Registrato dal
    Oct 2006
    Messaggi
    7
    Originariamente inviato da robbie89
    Direi che questo che ti mostro sotto, sia un modo per poter leggere il contenuto del tuo file .pdf

    codice:
    File fileInput=new File("documento.pdf");
    FileInputStream fileInputStream=new FileInputStream(fileInput);
    InputStreamReader inputStreamReader=new InputStreamReader(fileInputStream); BufferedReader bufferReader=new BufferedReader(inputStreamReader);
    String linea=bufferReader.readLine();
    
    while(linea!=null) {
          System.out.println(linea);
          linea=bufferReader.readLine();
    }
    Ciao ho provato con il tuo script mami da FileNotFoundException

    java.io.FileNotFoundException: Delibera_15.pdf (Impossibile trovare il file specificato)
    at java.io.FileInputStream.open(Native Method)
    at java.io.FileInputStream.<init>(Unknown Source)

    boh... non so più che pesci prendere. Qualcuno sa aiutarmi? Grazie.

  5. #5
    Originariamente inviato da traod
    Ciao ho provato con il tuo script ma mi da FileNotFoundException

    java.io.FileNotFoundException: Delibera_15.pdf (Impossibile trovare il file specificato)
    at java.io.FileInputStream.open(Native Method)
    at java.io.FileInputStream.<init>(Unknown Source)

    boh... non so più che pesci prendere. Qualcuno sa aiutarmi? Grazie.
    Hai messo il path corretto??
    Hai parlato di NomeProgetto/WebContent/resources/documents/nome_file.pdf dovrai replicare il path anche nella tua classe, se no come fai a recuperare il file se non sai dove andare a prenderlo??

    Il file così Delibera_15.pdf te lo prende dalla root del progetto.

    Prova così e facci sapere

  6. #6
    Utente di HTML.it
    Registrato dal
    Oct 2006
    Messaggi
    7
    Originariamente inviato da robbie89
    Hai messo il path corretto??
    Hai parlato di NomeProgetto/WebContent/resources/documents/nome_file.pdf dovrai replicare il path anche nella tua classe, se no come fai a recuperare il file se non sai dove andare a prenderlo??

    Il file così Delibera_15.pdf te lo prende dalla root del progetto.

    Prova così e facci sapere
    ciao
    ho provato ma ancora non va

    mi da questa eccezione

    java.io.FileNotFoundException:NomeProgetto\WebCont ent\resources\cms\documents\Delibera_15.pdf (Impossibile trovare il percorso specificato)
    at java.io.FileInputStream.open(Native Method)
    at java.io.FileInputStream.<init>(Unknown Source)

    La prima cosa che noto è che mi ha cambiato gli slash da / a \ ...

  7. #7
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,326
    Punto primo: lascia perdere il fatto che gli slash siano "rovesciati"... la JVM sa il fatto suo per quanto riguarda la nomenclatura dei files nel sistema operativo dove gira e se li aggiusta lei.

    Una domanda che nessuno ha ancora posto: stai progettando una WebApplication? Non l'hai specificato... se è così, allora per poter accedere al file devi ottenere prima di tutto il suo percorso. Ed il suo percorso è relativo alla "home" del progetto, la quale a sua volta è relativa al Servlet Container (o Application Server) all'interno del quale essa gira.

    Questo significa che devi ottenere il Context e da questo risalire al percorso. Chiaramente bisogna avere ben chiaro quale sia la home del progetto (che non c'entra nulla con il percorso all'interno dell'ambiente di sviluppo).


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  8. #8
    Come dice giustamente left il path è relativo.

    supponendo che tu non stia facendo una web application il path che dovrai creare inizia con ./resto_del_path in questo modo la ricerca verrà effettuata dalla cartella del progetto e non dalla root del filesystem.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.