首页 > 解决方案 > 如果文件没有完全在最后一个字节结束会发生什么?

问题描述

例如,如果一个文件是 100 位,那么它将被存储为 13 个字节。这意味着最后一个字节的前 4 位是文件,后 4 位不是文件(无用数据)。

那么,在使用 java 中的 FileInputStream.read() 函数或其他编程语言中的类似函数读取文件时,如何防止这种情况发生呢?

标签: javafile

解决方案


您会注意到,如果您曾经使用过汇编,则无法实际读取特定位。内存的最小可寻址位是一个字节,内存地址是指内存中的特定字节。如果你曾经使用过一个特定的位,为了访问它,你必须使用像这样的按位函数| & ^所以在这种情况下,如果你以二进制形式存储 100 位,你实际上至少存储了 13 个字节,而一些位只是默认的为 0,所以结果是一样的。


推荐阅读