Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    [Java e FTP] Leggere File!

    Salve ragazzi,
    per oggi ho un nuovo quesito!
    Sto trattando l'ftp con java, e utilizzo la libreria ftp4j. riesco a fare tutto, dalla connessione al download del file! ora mi è stato richiesto di poter leggere direttamente da ftp il contenuto di un file chiamato "Elementi.xml"! Solo che cercando qua e la non trovo nulla che dica che si può fare o come fare. voi sapete darmi qualche dritta? è possibile come cosa?
    grazie in anticipo per le risposte che spero saranno numerose!

  2. #2
    fai il download e una lettura. Che poi il download non lo appoggi al file system ma lo leggi al volo va bene, la logica con cambia...
    Ivan Venuti
    Vuoi scaricare alcuni articoli sulla programmazione, pubblicati su riviste di informatica? Visita http://ivenuti.altervista.org/articoli.htm. Se vuoi imparare JavaScript leggi il mio libro: http://www.fag.it/scheda.aspx?ID=21754 !

  3. #3
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: [Java e FTP] Leggere File!

    Originariamente inviato da Aramil89
    mi è stato richiesto di poter leggere direttamente da ftp il contenuto di un file chiamato "Elementi.xml"
    Premetto che non ho mai usato questa libreria ma non ho problemi a leggere la sua documentazione javadoc, che ho già trovato.

    Tu parli di leggere "direttamente" da ftp, quindi io immagino che non vuoi scaricare il file remoto su un file locale ma poter estrarre e manipolare lo stream di byte direttamente da programma.

    Stando alla documentazione, la classe FTPClient ha diverse versioni di download() che ricevono un java.io.File (file locale) ma ha anche un download() che riceve un OutputStream su cui scrive i dati.
    Se ci fosse stata la possibilità di ottenere un InputStream da cui leggere il file remoto .... sarebbe state estremamente semplice.
    Potendo usare solo un OutputStream limita/complica un pochino le cose ma si può fare comunque qualcosa.
    Potresti passare un ByteArrayOutputStream in modo da avere poi l'array di byte su cui farci quello che vuoi. Oppure potresti usare la coppia PipedInputStream/PipedOutputStream ma si complica di più.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  4. #4
    Allora ringrazio entrambi per le risposte! si in effetti devo leggere direttamente da ftp senza eseguire il download in locale.
    Diciamo che se questa cosa fosse impossibile da effettuare, per i miei superiori va bene anche il download del file, la lettura e l'eliminazione del file a fine procedura.
    quella che devo realizzare è una procedura semplice che verrà usata una volta al giorno in esecuzione automatica. il top sarebbe stato che alla partenza del programma, esso si connetteva all'ftp, leggesse il file xml e poi potesse fare quello che deve fare (download dei file che lui legge su quell'xml) in modo del tutto automatico! come potrei fare con il ByteArrayOutputStream? Non mi è mai capitato di utilizzarlo sinceramente^^

  5. #5
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da Aramil89
    come potrei fare con il ByteArrayOutputStream? Non mi è mai capitato di utilizzarlo sinceramente^^
    Semplicemente è un OutputStream che scrive su un array byte[] interno che si espande man mano.
    E l'array di byte lo puoi poi leggere e gestire come vuoi.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  6. #6
    ok ci sto provando ma non va molto bene la cosa XD ho un manualetto di java sotto gli occhi per il bytearray ma non mi riesce.. vabbè ci proverò! grazie mille!

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.