nel package java.net.* ci sono diverse classi che richiedono un array di 4 byte per IPv4 e 6 per IPv6. Ma come faccio a metterci dentro all'array un IP tipo 151.128.128.193, che il tipo byte in Java va da -128 a 127 e non esiste l'unsigned?
nel package java.net.* ci sono diverse classi che richiedono un array di 4 byte per IPv4 e 6 per IPv6. Ma come faccio a metterci dentro all'array un IP tipo 151.128.128.193, che il tipo byte in Java va da -128 a 127 e non esiste l'unsigned?
Ci sono 10 tipi di persone al mondo: quelli che conoscono il codice binario, e quelli che non lo conoscono!
Ciao; se ti riferisci alle classi Inet4Address e Inet6Address secondo me dovresti utilizzare il metodo getByName(String host); per avere un oggetto di tipo Inet4Address/Inet6Address e poi utilizzare i metodi per ottenre l'array di byte se ti serve
Se vuoi trovare l'arcobaleno, devi sopportare la pioggia
Sì, esatto, per l'esatezza mi riferisco al metodo:
objInet4Address.getByAddress(byte[])
che restituisce un InetAddress.
L'IP ce l'ho già, e dovrei creare un Inet4Address, solo che non so come passarglielo visto che mi va in overflow...è importante che si connetta tramite IP.
Cmq adesso sto solo facendo delle prove e posso fare come mi hai suggerito: così vedo come mi crea l'array di 4 byte e vedo come fa per l'overflow.
Ci sono 10 tipi di persone al mondo: quelli che conoscono il codice binario, e quelli che non lo conoscono!
ok, ho scoperto come fa, è l'uovo di colombo:
se il byte supera il 127 riparte da -128. Ad esempio per non andare in overflow con 172 dovrei scrivere -84
Ci sono 10 tipi di persone al mondo: quelli che conoscono il codice binario, e quelli che non lo conoscono!
Non è necessario quell'espediente, basta usare un cast esplicito prima dei numeri:
Ciao.codice:byte [] ip = {(byte) 255, (byte) 255, (byte) 255, (byte) 255};
"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
ah, ok, perfetto!!!
Non ci avevo pensato minimamente. Io utilizzavo la Byte.parseByte(int) e mi dava overflow...
grazie
Ci sono 10 tipi di persone al mondo: quelli che conoscono il codice binario, e quelli che non lo conoscono!