1M 文本文件在磁盘和内存中的空间占用
当我们有一份未压缩文本文件 a.txt,大小为 1M(磁盘存储大小)时,将其读入内存后,它所占用的内存空间大小取决于以下因素:
编码相同的情况下:
因此,在编码相同的情况下,读入内存后的空间占用肯定会大于 1M。
编码不同时:
例如,如果 a.txt 文件以 UTF-8 编码,字节大小为 172 字节。如果将其转换成 GBK 和 UTF-16 编码:
- GBK 编码:字节大小为 115 字节
- UTF-16 编码:字节大小为 118 字节
这表明,如果以 GBK 或 UTF-16 编码读取文件,则文本本身所占用的内存空间将小于 1M。