Jak pobrać ilość bajtów zajmowanych (powiedzmy, w pamięci) przez String?
Chodzi o to, że metoda length() String'a "sac" zwróci 3 - i dobrze
ale ta sama metoda ze Stringa "śąć" też zwróci 3 a mnie chodzi o to by zwróciła 6 (bo zakładam, że polskie znaki są kodowane dwoma bajtami),
przynajmniej tak mi program zapisuje metodą RandomAccessFile.writeUTF() Stringa do pliku, jeśli zapisuje stringa z polskimi znakami to mi plik "rośnie" bardziej (każdy polski krzak zajmuje 2 bajty) i potrzebuję wiedzieć ile bajtów w rzeczywistości trafi do pliku (bez głupawego zliczania IF'ami ilości polskich znaków i innych);
kombinowałem z poniższym kodem ale niestety on też mi zwraca wartość 3
String s = "śąć";
byte b[] = s.getBytes();
int i = b.length;
System.out.println("ilosc byte'ow: " + i);
kombinacja:
char b[] = s.toCharArray();
tym bardziej nie zadziała...
jeśli ktoś ma na to lekarstwo to poproszę o nie :]