繁体   English   中英

文件扩展名规则?

[英]Rules for file extensions?

文件扩展名有任何规则吗? 例如,我编写了一些代码,该代码读取和写入只能由该特定程序理解的字节模式。 我以为如果我给它命名为“ pleasetrustme.exe”,我的防病毒程序就不会太高兴...是否可以同时使用这些扩展名? 那鲜为人知的“ .arw”呢?

您可以使用所需的任何文件扩展名(或完全不使用)。 使用反映文件实际类型的标准扩展名会使事情变得更加方便。 在Windows上,文件扩展名控制着诸如Windows Explorer中文件的显示方式以及双击文件时会发生的事情。

我写了一些代码,该代码只能读写该特定程序才能理解的字节模式。

文件扩展名仅指示将要包含哪种数据类型,而不能保证以特定方式格式化的某些数据将位于文件内部。

对于您自己的特定数据结构,当然总是最好选择一个尚未用于其他文件格式的扩展名(或者使用.dat或.bin之类的通用扩展名)。 这还具有以下优点:能够使用自己的图标,而不会被使用相同扩展名的其他软件覆盖-或相反。

但是,在创建自定义(二进制?)文件格式时,甚至更重要的是提供一个魔术数字作为该文件的前几个字节,然后是一个包含版本号等的文件头结构。这样,您自己的软件就可以检查标头数据以确保其类型和版本正确(例如:任何人都可以将任何文件类型重命名为扩展名,因此您的程序需要有一种方法在读取其余数据之前对文件进行一些检查)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM