Just wanted to post this. it is not a goog idea to read Unicode with a stream, because streams generally read a byte at a time.
And each Unicode character is comprised of two bytes. So what you would have to do is multiply the first byte read, add it to the second byte read and cast it to a char.
For instance:
Code:
int b1 = in.read();
int b2 = in.read();
char c = (char) (b1*256 + b2);
So say we have the number 300.
300 in binary is 100101100
So take the first byte which is. 1 = 1
and the second which is 0010 1100 = 44
1 * 256 = 256
256 + 44 = 300
cast 300 to a char and complete!