PDA

View Full Version : [JAVA]DataInputStream


MEMon
24-09-2006, 14:25
C'è un mod per leggere il valore all'interno del data input stream senza conoscerne il tipo?

andbin
24-09-2006, 15:59
C'è un mod per leggere il valore all'interno del data input stream senza conoscerne il tipo?Sei tu che devi sapere esattamente come è fatto lo stream e cosa contiene! DataInputStream/DataOutputStream servono solo per leggere/scrivere dei tipi primitivi in uno stream in una maniera portabile.

Se con DataOutputStream hai scritto nello stream un int, poi un byte e poi un double, lo sai tu come è fatto lo stream e in lettura dovrai quindi prendere dallo stream i tipi nella stessa sequenza: prima un int, poi un byte e poi un double. Altrimenti .... bang! leggi dati scorretti.
Per essere più chiari: non c'è alcun "tag" dei tipi nello stream.

MEMon
24-09-2006, 16:21
Si lo immaginavo, il mio problema è che ho un server ed un client, e vorrei che il server posso ricevere vari tipi di dato primitivi(int,short,long,byte) solo che non vorrei inviare un pacchetto più grande del dato effettivamente contenuto quindi non saprei come fare a far sapere al server che tipo di dato c'è dentro...

andbin
24-09-2006, 16:59
Si lo immaginavo, il mio problema è che ho un server ed un client, e vorrei che il server posso ricevere vari tipi di dato primitivi(int,short,long,byte) solo che non vorrei inviare un pacchetto più grande del dato effettivamente contenuto quindi non saprei come fare a far sapere al server che tipo di dato c'è dentro...Beh, qualcosa devi pur mettere per poter "taggare" il tipo!! Puoi pensare di scrivere un byte (sarebbe il minimo!) prima di ogni dato in modo da indicare con un numero il tipo di dato.