Reading and Writing Booleans
The
DataOutputStream
class has a
writeBoolean()
method and the
DataInputStrea
m class has a corresponding
readBoolean()
method:
public final void writeBoolean(boolean b) throws IOException public final boolean readBoolean() throws IOException
Although theoretically a single bit could be used to indicate the
value of a boolean
, in practice a whole byte is
used. This makes alignment much simpler and doesn’t waste
enough space to be an issue on modern machines. The
writeBoolean()
method writes a zero byte (0x00) to
indicate false
, a one byte (0x01) to indicate
true
. The readBoolean()
method
interprets
as false
and any positive number as
true
. Negative numbers indicate end of stream and
lead to an EOFException
being thrown.
Get Java I/O now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.