Creazione file di testo su PC con dati prelevati online

di il
4 risposte

Creazione file di testo su PC con dati prelevati online

Ciao a tutti,dovrei fare un piccolo programmino che legge da un file .txt caricato su un webserver dei valori e scriverli su un altro file .txt che si trova sul pc. Mi servirebbe sapere come posso far si che questo programmino funzioni in background e prelevi questi valori ogni tot di tempo?

4 Risposte

  • Re: Creazione file di testo su PC con dati prelevati online

    diegopsyco ha scritto:


    legge da un file .txt caricato su un webserver dei valori
    Se per webserver intendi un server HTTP, di base bastano le classi nel package java.net, in particolare URL, URLConnection e poi chiaramente le classi di I/O in java.io .

    diegopsyco ha scritto:


    e scriverli su un altro file .txt che si trova sul pc.
    Anche qui, bastano le classi di I/O in java.io .

    Vedi sul tutorial ufficiale:
    Working with URLs
    Basic I/O

    diegopsyco ha scritto:


    Mi servirebbe sapere come posso far si che questo programmino funzioni in background e prelevi questi valori ogni tot di tempo?
    Dire solo "background" è un po' vago, nel senso che bisognerebbe specificare rispetto a cosa. Generalmente per "programma in background" si intende un programma che esegue una serie di operazioni (anche ripetute continuamente) avendo poca/nessuna interazione con l'utente.
    Comunque anche questo si può fare in Java. E riguardo il "ogni tot di tempo" anche questo è fattibile, banalmente con un loop che contiene uno sleep di tot tempo oppure in maniera più forbita con l'uso di un timer (java.util.Timer).

    Se vuoi continuare nella discussione, precisa quindi quali sono le tue conoscenze su Java e cosa ti è chiaro o no di quanto ho detto.
    Soprattutto cerca di spezzare questo problema in sotto-problemi più piccoli, così se hai dubbi precisi, ti si possono dare indicazioni precise.
  • Re: Creazione file di testo su PC con dati prelevati online

    Grazie mille,intanto inizio a scrivere il codice.
    Comunque il programma si deve avviare e basta,niente interazioni,ma pensandoci alla fine basta avviarlo e lasciarlo lì,avevo giusto una fissa per renderlo "nascosto" e non ingombrante.

    EDIT:Ho scritto il codice per leggere e scrivere il file,ora mi trovo in difficoltà con la classe Timer,ho visto che utilizza i Thread che non ho ancora affrontato
  • Re: Creazione file di testo su PC con dati prelevati online

    Scrivere e controllare threads e' sempre un lavoro compicato. Forse ti puo' aiutare la libreria Quartz fatta apposta per eseguire comandi temporizzati.
  • Re: Creazione file di testo su PC con dati prelevati online

    diegopsyco ha scritto:


    EDIT:Ho scritto il codice per leggere e scrivere il file,ora mi trovo in difficoltà con la classe Timer,ho visto che utilizza i Thread che non ho ancora affrontato
    Il java.util.Timer esegue i task nel contesto di un thread specifico creato e gestito dal Timer stesso.
    Nel tuo caso immagino che hai un solo task e in tal caso il fatto che sia eseguito in un thread specifico rispetto ad esempio al "main" thread (quello che esegue il main() ) a te non dovrebbe cambiare/importare molto, anzi quasi nulla. Quindi anche se al momento sai poco/nulla sui thread, potresti usarlo senza grossi problemi.

    Se non vuoi usare Timer, c'è la soluzione basilare e minimale: un metodo che contiene un ciclo che si ripete continuamente con dentro la esecuzione del tuo lavoro più uno "sleep" di un tot di tempo.

    Usare invece librerie specifiche come la Quartz te lo sconsiglio. Non perché non vadano bene, anzi. Ma se non conosci i thread e già il Timer non ti ispira granché, nel tuo caso andare ad usare la Quartz equivale al classico passaggio che si dice "dalla padella alla brace".
Devi accedere o registrarti per scrivere nel forum
4 risposte