在阅读本书的Java字节流的,我偶然看到这个例子书中使用,以显示两者之间的差异。使用的示例是数字199.根据该书,如果将此编号写入字符流,则将其写入三个不同的字符:0x31 0xC7 0x39。但是,如果将其写入字节流,则将其写入单个值0xC7。我的疑问是,199不适合Java中的一个字节。那么,它不应该被写成两个字节而不是一个?在二进制流中是否写成1个字节或两个字节?在字节流混乱
Q
在字节流混乱
0
A
回答
1
如果你打电话OutputStream.write(int)
,这是写入单个字节的方法,它会忽略除了低8所有位。这意味着199
和-57
将以完全相同的方式写入。对于特定的方法,这是它的工作方式,因为它只能写一个字节。
如果你叫一些其他的方法,它将不同的方式工作。例如,DataOutputStream.writeInt
将一个整数写成四个字节,因为这就是该方法的用途。
相关问题
- 1. C#UTF-8字节混乱
- 2. int或字节混乱
- 3. 检查字节码指令混乱?
- 4. Android VideoView流播放混乱
- 5. 混乱的程序流程
- 6. 斯卡拉流混乱
- 7. matlibplot生成情节混乱
- 8. 字混乱算法
- 9. 在pthread_create混乱
- 10. 混乱在F#
- 11. 混乱在PHP
- 12. 混乱在C#
- 13. iOS Touch ID工作流程很混乱
- 14. OpenGraph故事审核流程混乱
- 15. 阵营JS单向数据流混乱
- 16. 混乱
- 17. 混乱
- 18. 混乱
- 19. 混乱
- 20. 分词和混洗/混乱字母
- 21. 密封关键字混乱
- 22. 字符编码混乱!
- 23. 通用打字混乱
- 24. 新的关键字混乱
- 25. 混乱与节点集函数 - “ID”
- 26. BST节点删除混乱[JaVa]
- 27. 混乱与节目的输出
- 28. 角和节点混乱变量
- 29. 插入节点功能混乱
- 30. 混乱了在C++
为了这些目的,一个字节是无符号的,所以它在'0-255' – khelwood
字节在Java中签署的范围,不是吗?它如何被无签名? – birraa
一个_byte_仅仅是8个数据位:你可以把它当作一个数字0和255之间,即使在Java'byte'类型会认为它是不同的。 – khelwood