技术问询:文件名中的点.是否属于文件扩展名?
点:是分隔符还是扩展名的一部分?
嘿,这个问题问得特别好——其实得分严格技术定义和日常使用习惯两种情况来看:
严格技术层面:点是分隔符,不属于扩展名
在绝大多数文件系统(比如NTFS、ext4、APFS这些)的规范里,点只是用来分隔主文件名和扩展名的符号,本身并不属于扩展名的一部分。举几个实际例子:
- 对于文件
image.png,系统识别的主文件名是image,扩展名是png - 用Linux的
file命令查看:file image.png会返回类似image.png: PNG image data...,这里的扩展名核心是PNG,点只是分隔标识 - Windows系统的文件属性里,“文件类型”字段显示的也是不带点的格式(比如“PNG 图像”)
还有个特殊场景:如果文件名里有多个点,比如project.v1.2.pdf,系统只会把最后一个点后面的内容当作扩展名(也就是pdf),前面的点都是主文件名的一部分。
日常使用习惯:我们常把点包含在“扩展名”里
这完全是为了表述方便!单独说“png”有时候容易和其他词汇混淆,加上点之后(.png),就能立刻明确指的是文件的格式后缀。而且很多工具(比如桌面文件管理器的显示设置)会把点和后面的字符一起高亮显示,久而久之大家就默认把.png、.docx这类带点的组合称作“扩展名”了——这是约定俗成的口语化用法,和技术定义并不冲突。
总结一下:技术上点是分隔符,不属于扩展名;日常交流里带点说扩展名是大家默认的便捷表述,没人会较真纠正你~
内容的提问来源于stack exchange,提问作者Jesper Lundin




