Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2006
    Messaggi
    25

    [JAVA] Invio array di stringhe in client/server

    Salve a tutti. Ho un quesito da porre:
    Come faccio a inviare un array di stinghe da un server a un client?
    Una volta definiti l'input e output stream che metodi posso usare per scriverci su questo benedetto array?
    Grazie

  2. #2
    Utente di HTML.it
    Registrato dal
    Dec 2005
    Messaggi
    65
    se vuoi inviare informazione, devi prima serializzarle....

    mi spiego meglio....
    devi creare una classe ke estenda "serializzable", impacchettare il tuo array dentro questa classe e utilizzare degli oggetti di tipo InputObjectStream e OutputObjectStream x poter scrivere l'oggetto serializzato sul buffer in uscita e leggerlo su quello in ingresso...
    Quindi lato client e lato server e viceversa.......

    Es.
    Class Box implements Serializable{

    private String[] array;

    public Box(){array=null;}

    public setArray(String[] temp){array=temp;}

    public getArray(){return array;}
    }
    questa classe deve essere presente sia sul client ke sul server
    poi con gli oggetti di Input/OutputObjectStream leggi e scrivi l'oggetto sul buffer di comunicazione..........

    spero di esserti stato di aiuto

  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2005
    Messaggi
    65
    ke italiano pessimo...scusa ma nn ho riletto

    .......cmq....nn dimenticare, come ho fatto io, i tipi di dato di ritorno nei metodi

  4. #4
    Utente di HTML.it
    Registrato dal
    Feb 2006
    Messaggi
    25
    E se volessi realizzare ciò che ho descritto senza serializzazione?
    Per esempio ho pensato:
    -Lato Server(che deve inviare l'array di stringhe) sul suo outputStream potrei invocare una out.writeInt() per mandare al client il numero di stringhe che invio e con un ciclo for inviarle ad una ad una tramite out.writeString(array[i])
    -Lato client dovrei leggere l'intero(=num_stringhe_da_leggere) e poi con un altro ciclo for leggerle ad una ad una...solo che il suo dataInputStream non dispone del metodo read.String... :master:

  5. #5
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320
    Allora utilizzi ObjectOutputStream per scrivere e ObjectInputStream per leggere (tanto gli array implementano già di per se Serializable).

    writeObject() per scrivere l'oggetto e readObject() (col cast!!) per leggere.


    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

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.