我需要帮助解决一个问题。 我想读一个二进制文件。
该文件的内容是: 0000000010001100
我正在使用以下代码来实现我的目标:
InputStream is = new FileInputStream(new File("/test.bin"));
DataInputStream din = new DataInputStream(is);
System.out.println(din.readByte() & 0xFF);
我原以为输出为0,因为8个零的无符号字节为0.但代码打印48。
有人能告诉我我做错了什么并解释我怎么能输出48?
答案 0 :(得分:2)
你确定你不会无意中将'0'保存为文件中的第一个字符吗?文本字符“0”的ASCII为48。