“文件大小”和“占用空间”的区别

前言:

           今天再拷贝文件的时查看文件属性,发现有“文件大小”和“占用空间”两个内容,而且两者之间的差距很大,见下图:

                                         


            上图可知文件大小是2.54GB,而占用空间是18.2GB,差了不到16个G。

       Windows会使用NTFS和FAT的文件系统管理磁盘文件,这个大家都知道,而所有文件系统都是基于"簇"的大小,也就是分配单元的大小,说白了,就是分配用来保存文件的最小磁盘空间量。而常用的Windows XP NTFS下最大的默认簇大小为 4 千字节 (KB)。也就是说,每个文件都是按4K的空间划分保存的,即使这个文件只有100字节。举个生活中的例子吧,很多人一起吃饭,这个分配单元就相当于碗的大小,这个文件就好比碗里的饭,每个人的饭量不一样,有人吃的多,就需要两个碗来盛饭,但是有的人吃的少,但也是要占一个碗。了解这个概念以后,理解起来文件大小和占用空间的关系就简单多了。

 

1.什么是簇?  

         “簇”又称为“分配单元” ,文件系统是操作系统与驱动器之间的接口,当操作系统请求从硬盘里读取一个文件时,会请求相应的文件系统(FAT 16/32/NTFS)打开文件。扇区是磁盘最小的物理存储单元,但由于操作系统无法对数目众多的扇区进行寻址,所以操作系统就将相邻的扇区组合在一起,形成一个簇,然后再对簇进行管理。每个簇可以包括2、4、8、16、32或64个扇区。显然,簇是操作系统所使用的逻辑概念,而非磁盘的物理特性。

  为了更好地管理磁盘空间和更高效地从硬盘读取数据,操作系统规定一个簇中只能放置一个文件的内容,因此文件所占用的空间,只能是簇的整数倍;而如果文件实际大小小于一簇,它也要占一簇的空间。所以,一般情况下文件所占空间要略大于文件的实际大小,只有在少数情况下,即文件的实际大小恰好是簇的整数倍时,文件的实际大小才会与所占空间完全一致。


 2.分区格式与簇大小

  计算文件所占空间时,可以用如下公式:

  簇数=取整(文件大小/簇大小)+1     所占空间=簇数×磁盘簇大小

  公式中文件大小和簇大小应以Byte为单位,否则可能会产生误差。如果要以KB为单位,将字节数除以1024即可。利用上述的计算公式,可以计算文件的实际占用空间。


3.轻松查看簇大小 


①   在WINDOWS的操作系统中,我们可以用Chkdsk命令来进行查看,打个比方,我们要查看C盘的簇大小,操作如下,首先点击【开始菜单】,选择【运行...】,在运行输入框键入“CMD”后回车,然后在黑色DOS下键入“C:”后点回车键确认,再输入“Chkdsk”后点击回车键确认,就可以从它的分析结果中,得到C盘簇的大小。不过在结果中会把簇称之为“分配单元”或者“Allocation unit”。

         


② 还可以借助PQ Magic等磁盘工具来检测。目前很多磁盘工具都可以显示磁盘信息的详情。例如在PQ Magic中,选择要查看的磁盘分区,然后单击右键选择【高级】,然后选择【调整簇的大小】,就可以从对话框中看到或者更改当前磁盘设置的簇大小。


③ 也可以自己手动创建一个100字节以下的文档,然后把文件复制到想要查看簇大小的磁盘分区中,打开文件属性,在所占空间一栏中显示的数值就是簇的大小。

总结:

      简单的介绍了一下“文件大小”和“占用空间”的差别,所以当我们存储非常多的小文件的时候,其所占用的空间就越大,但很可能其实际的文件大小却很小,也就是这个道理。同理,一个文件越大,其占用的空间也就越小。

    说简单一点,拿仓库做比方,我们有100个仓库,为了好管理和查找,我们可能会把各种不同的物品分别放入不同的仓库,但是这个物品很可能不能填满仓库,那么它仍然也是占用了仓库的所有空间的。那么可能有人问了,为什么不把这个仓库多放东西,好节约空间,但是这样的话很可能你找很久久没有办法找到你所要的东西,其性能就非常低了。同理。


 


  • 43
    点赞
  • 72
    收藏
    觉得还不错? 一键收藏
  • 41
    评论
文件大小”和“占用空间”有什么不同? 在使用电脑时,文件属性下有“文件大小”和“占用空间”这两个内容,它们有什么异同。 --------------------------------------------------------------------------------   在Windows系统中,一个文件的大小(字节数)和它在硬盘上(或其他存储介质上)所占的空间是两个既相互联系又有区别的概念。在不同的情况下,同一个文件的“所占空间”会发生变化。 1.“文件大小”与“所占空间”的差别 为了便于大家理解,我们先来看两个例子:   例1:找到D盘上的Ersave2.dat文件,用鼠标右键单击该文件,选择“属性”,即可打开对话框,我们可以看到,Ersave2.dat的实际大小为655,628 Byte(字节),但它所占用空间却为688,128 Byte,两者整整相差了32KB。   例2:同样是该文件,如果将它复制到A盘,你会发现该文件实际大小和所占空间基本一致,同为640KB,但字节数稍有差别。再将它复制到C盘,查看其属性后,你会惊奇地发现它的大小和所占空间的差别又不相同了!   显然,在这三种情况中,文件的实际大小没有变化,但在不同的磁盘上它所占的空间却都有变化。事实上,只要我们理解了文件在磁盘上的存储机制后,就不难理解上述的三种情况了。文件的大小其实就是文件内容实际具有的字节数,它以Byte为衡量单位,只要文件内容和格式不发生变化,文件大小就不会发生变化。但文件在磁盘上的所占空间却不是以Byte为衡量单位的,它最小的计量单位是“(Cluster)”。 1、小知识:什么是?   文件系统是操作系统与驱动器之间的接口,当操作系统请求从硬盘里读取一个文件时,会请求相应的文件系统(FAT 16/32/NTFS)打开文件。扇区是磁盘最小的物理存储单元,但由于操作系统无法对数目众多的扇区进行寻址,所以操作系统就将相邻的扇区组合在一起,形成一个,然后再对进行管理。每个可以包括2、4、8、16、32或64个扇区。显然,是操作系统所使用的逻辑概念,而非磁盘的物理特性。 为了更好地管理磁盘空间和更高效地从硬盘读取数据,操作系统规定一个中只能放置一个文件的内容,因此文件所占用空间,只能是的整数倍;而如果文件实际大小小于一,它也要占一空间。所以,一般情况下文件所占空间要略大于文件的实际大小,只有在少数情况下,即文件的实际大小恰好是的整数倍时,文件的实际大小才会与所占空间完全一致。 2、分区格式与大小   在例2中,同一个文件在不同磁盘分区上所占的空间不一样大小,这是由于不同磁盘大小不一样导致的。大小主要由磁盘的分区格式和容量大小来决定,其对应关系如表1所示。 笔者的软盘采用FAT分区,容量1.44MB,大小为512 Byte(一个扇区);C盘采用FAT 32分区,容量为4.87GB,大小为8KB;D盘采用FAT 32分区,容量为32.3GB,大小为32KB。计算文件所占空间时,可以用如下公式: 数=取整(文件大小/大小)+1 所占空间=数×磁盘大小 公式中文件大小大小应以Byte为单位,否则可能会产生误差。如果要以KB为单位,将字节数除以1024即可。利用上述的计算公式,可以计算ersave2.dat文件的实际占用空间。 3、轻松查看大小   ①用Chkdsk查看大小 在Windows操作系统中,我们可以使用Chkdsk命令查看硬盘分区的大小。例如我们要在Windows XP下查看C盘的大小,可以单击“开始→运行”,键入“CMD”后回车,再键入“C:”后回车,然后输入“Chkdsk”后回车,稍候片刻从它的分析结果中,我们就可以得到C盘的大小,不过它把称之为“分配单元”或者“Allocation unit”。   ②用PQ Magic等磁盘工具来检测 很多磁盘工具都具备磁盘信息显示等功能。例如在PQ Magic中,选择要查看的磁盘分区,然后单击右键选择“高级→调整大小”功能,即可从显示的对话框中可以看到该磁盘当前设置的大小。   ③手工查看 手动创建一个100字节以下的文本文档。然后将该文件复制到欲查看大小磁盘分区中,在Windows下显示该文件的属性,其中“所占空间”处显示的数值就是大小

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 41
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值