Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2007
    Messaggi
    27

    [java] Trasferire file tramite socket tcp

    Come fare per trasferire veri e propri file tra 2 programmi su socket tcp?
    Ho pensato di creare in entrambi i programmi 2 oggetti di tipo File, in uno con il path del file da trasferire, nell altro vuoto, e di compiere quindi il trasferimento con delle ObjectStreams.
    E' fattibile?
    Se è corretto, il programma che riceve il file nell'oggetto File, come fara' poi a creare il vero e proprio file sull hard disk in un path scelto a priori?

    Altra questione direi secondaria, come posso tenere traccia dello stato di avanzamento di un trasferimento? (solo per creare nella gui una barra che avanza secondo la %)


    grazie per l'aiuto


    Nite

  2. #2
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    Non ti conviene andare direttamente di FileInputStream e FileOutputStream?
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  3. #3
    E' piuttosto semplice con le classi fornite in java.net.

    Trovi degli ottimi esempi gia' pronti qui: http://www.exampledepot.com/egs/java...g.html#Sockets

  4. #4
    Utente di HTML.it
    Registrato dal
    Jul 2007
    Messaggi
    27
    Originariamente inviato da Andrea1979
    Non ti conviene andare direttamente di FileInputStream e FileOutputStream?
    Come faccio? non posso associare ad una FileStream le stream di un socket, ad esempio se faccio cosi non compila
    FileInputStream fis = new FileInputStream(connectionSocket.getInputStream()) ;
    Infatti nelle api delle filestream è scritto che possono essere assegnate solo ad oggetti File

    Forse intendevi di usarle per scrivere e leggere dati dai files? Se è cosi, in pratica devo fare una FileInputStream che legge da un oggetto File linkato al file da inviare ed una FileOutputStream nel programma ricevente che scriva in un File linkato ad un nuovo file?
    Se è cosi, come invio i dati veri e propri? Dovrei leggere i byte del file da inviare ad uno ad uno ed inviarli su una ObjectOutputStream associata alla OutputStream del socket?


    grazie


    ps: x pozzad, in quel link non ci sono esempi su questa cosa

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.