Staci mi posilat len byty. Cela komunikace je postavena na vymene bytu, takze to staci...
Příspěvky odeslané z IP adresy 79.142.145.–
Problem byl, ze ta metoda pro zapis na OutputStream bere jako parametr pouze pole bytu. Resim to tak, ze pokud chci do promenne typu byte ulozit cislo, tak to jen pretypuju:
public static byte getUByte(int i) {
byte b = (byte) i;
return b;
}
Pokud je cislo vetsi nez 127, tak mi to vlozi zapornou hodnotu, ale to je jedno, protoze to je vlastne jakoby interpretace javy. Posloupnost bitu zustava stejna, takze to klidne muzu poslat do zarizeni, ktere ty byte precte normalne (0 - 255).
Zdravim,
nejsem odbornik na Javu, ale potrebuji napsat aplikaci pro Android a narazil jsem na problem. Zjistil jsem, ze byte v Jave ma rozsah -128 az 127. Ja bych potreboval byte, ktery ma rozsah 0-255 (jak to je napr. v C#). jako reseni se mi ihned vybavil unsigned byte, ale to Java nebere.
Nenapada Vas, jak na to? Mam totiz rozsahlou aplikaci v C#, kde se vyskytuje mnoho promennych typu byte a nektere casti kodu prepisuju do Javy. Posilam neco pres bluetooth a metoda Write pro zapis na OutputStream bere jako parametr pouze pole bytu. Jenze tech signed bytu. kde zapornou cast nevyuziju a kladna cast mi bude chybet...
Diky za kazdou radu.