请教:一个文件1k占用了2k的磁盘空间 读取到内存是多大?1k吧?

Love_TuRong 2009-04-15 11:32:33
还有 为什么占用了2k的空间呢?
...全文
238 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
wohow 2009-04-16
  • 打赏
  • 举报
回复
文件占用多少磁盘空间是文件系统需要考虑的问题,在文件输入输出函数(fread、fwrite等)中没有这个概念,读取的最大空间取文件本身的大小就可以了
qcjqtvb 2009-04-16
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 GrilFriend0 的回复:]
这与你的磁盘格式有关系,就是所谓的“簇”,一个文件如果小于一个簇,

那它还是要占用这个簇的,并且是占够整个簇的空间。如果大于一个簇,就会在硬盘上分散起来存放,

这就是所谓的磁盘碎片。NTFS格式簇比FAT下小,它的碎片也相应少些。
[/Quote]

顶!
benjaminweber 2009-04-16
  • 打赏
  • 举报
回复
读到内存也不一定是1k。实际内存的分配也是有最小单位的,和内存管理有关。
flyhua1010 2009-04-15
  • 打赏
  • 举报
回复
问得好, 顶
GrilFriend0 2009-04-15
  • 打赏
  • 举报
回复
这与你的磁盘格式有关系,就是所谓的“簇”,一个文件如果小于一个簇,

那它还是要占用这个簇的,并且是占够整个簇的空间。如果大于一个簇,就会在硬盘上分散起来存放,

这就是所谓的磁盘碎片。NTFS格式簇比FAT下小,它的碎片也相应少些。
yong_hen 2009-04-15
  • 打赏
  • 举报
回复
占用磁盘空间是由你分区的时候影响的.
每一件文件一定占用整数倍的扇区.

而Windows默认分区是2048或4096字节每扇区.所以会出现你所说的情况.
如果你分区的时候,选择512字节每扇区,就不会出现这种情况了.

而读到内存里面占用多少,就不太清楚了.好像跟文件格式有关系

6,868

社区成员

发帖
与我相关
我的任务
社区描述
Windows 2016/2012/2008/2003/2000/NT
社区管理员
  • Windows Server社区
  • qishine
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧