代码之家  ›  专栏  ›  技术社区  ›  F'x

如何确定文档文件扩展名?

  •  0
  • F'x  · 技术社区  · 15 年前

    我正在编写一个新的基于文档的跨平台化学应用程序(win、mac、unix),它以自己的格式保存文件(这个字段没有标准格式)。我正在为保存的文件决定文件扩展名。我的问题是:

    • 现在坚持三个字有多重要?
    • 在哪里可以检查这个文件扩展名已经使用了多少?(当然,谷歌是有帮助的,但它并没有告诉我某个应用程序有多受欢迎)
    • 我真的需要使用特定于文件的扩展名吗?我的保存格式是gzip'ed xml,所以我可以命名它 .xml.gz 但我担心它会混淆最初的用户(即,当您看到它时,它不会立即“响铃”)。
    • 最后,在为自己的程序选择时,您还有其他重要的指导原则吗?

    附言:我试图在“提供的信息太少”和“太具体以致于对他人真正有用”之间保持正确的平衡。如果有需要,我很乐意在评论中提供更多信息。

    6 回复  |  直到 15 年前
        1
  •  3
  •   Simon P Stevens    15 年前
    • 现在坚持三个字有多重要?

    除非你必须支持旧的操作系统。所有当前的OSE处理3个字符的文件扩展名,没有任何问题。想想.html,.config,.resx,我确信还有更多。

    • 在哪里可以检查这个文件扩展名已经使用了多少?

    退房 FileExt .

    • 我真的需要使用特定于文件的扩展名吗?我的储蓄 格式是gzip'ed xml,因此我可以命名 它.xml.gz,但我担心它会 混淆初始用户(即 看,它不会立刻“响” 铃铛“”

    请记住,Windows(和Windows用户)通过扩展名将文件与应用程序关联起来,因此使用诸如.xml.gz等过于通用的东西可能会导致问题。您最好能想出一些更具体的文件类型或应用程序。用户不关心您的格式在内部是否是gzip XML,他们关心的是文件中的内容。考虑抽象层,您的用户会认为它是一个包含化学信息的文件,而不是gzip XML,因此.chem比.xml.gz更合适。

    关于以下事项的一些建议:

    1. 显然,不要与任何大的东西冲突-不要使用.doc,.xls,.exe等。

    2. 不要与您的行业领域中的任何常见的、您的用户群可能安装的内容冲突。例如,如果您正在编写编程工具,请不要使用.cs或.cpp。你可能最了解你的域名,所以列出你和你的用户可能安装的所有应用程序,以及他们的竞争对手,并避开它们。

    3. 确保您的应用程序包含注册和注销扩展的选项。不要只是在安装过程中自动完成,确保它是一个选项。

    4. 记住,unix/linux和mac是区分大小写的,所以考虑在默认情况下始终使用小写。

    5. 请记住,CD/DVD文件命名规则更严格,因此不要使用非字母数字字符。

    6. 最后,请记住,大多数非技术用户都将关闭文件扩展名,因此不要过分强调它。

    还有更多信息 here .

    维基百科有文件扩展名列表 here (by type) here (alphabetical) 还有一些 general information

        2
  •  4
  •   Ray    15 年前

    FileInfo.com 列出了许多文件扩展名,以及它们自己对它发布量的估计。

    我建议使用一个唯一的扩展名(而不是xml.gz),这样操作系统就可以在查看文件列表或其他内容时向用户标识文件类型。敲钟很重要,尤其是如果你的用户不够成熟。

    我不认为有必要坚持3个字符,但我不会超过5个字符(我想我没有真正的理由这样做,除了个人偏好)。

        3
  •  1
  •   David    15 年前
    1. 取决于平台,但一般来说,对于较新的操作系统不太重要。检查文档中的目标平台。

    2. 我不知道比谷歌更好的选择。希望其他人对此有更好的建议。

    3. 除非你有理由这样做。例如,“我想确保Windows总是用我的应用程序打开这个程序”。我不确定您的用户是否需要关心这个扩展。例如,Windows上的默认配置是隐藏已知文件类型的扩展名。但是,如果您有一个令人信服的原因(例如,允许您的程序轻松地识别它应该能够处理的文件),那么您可以使用扩展名,或者您可以想出其他方法。

    4. 我只写过一个程序,我认为我需要自己的扩展。我用了我的首字母。后来我意识到我不需要特殊的扩展名,于是改为“.xml”。然而,大多数扩展似乎都是有意义的。(文档等的.doc),所以如果您确实需要走这条路线,那么一些有意义的东西是一个好主意。

        4
  •  1
  •   Will    15 年前

    这当然取决于您想要支持的操作系统,但现在人们已经在全球范围内超过了3个字符的扩展限制: .html 例如,很好地用于网页。

    当然,如果你使用更长的扩展名,人们将不再把它视为文件扩展名,我想…

        5
  •  0
  •   T.J. Crowder    15 年前
    1. 除非您需要与特定的操作系统兼容,而您知道该操作系统仍然有三个字母的限制,否则不需要将其保留为三个字符。它 可以 如果您最终支持这些平台,那么拥有一个三字符版本的IT非常有用。

    2. 这个 Wikipedia list of file formats 相当不错。一些mime映射列表将列出与这些映射关联的公共扩展。雷已经提到了 FileInfo.com .

    3. 这是一个方便的事情;我可能会使用您自己的文档,但要记录这样一个事实:它们只是符合特定DTD的gzip XML文件,并使用户更容易使用.xml.gz。确保您的软件不关心扩展,这样用户甚至可以根据需要选择自己的软件,尽管我倾向于避免 鼓舞人心的 通过提供合理的违约。

    4. 我会按照这个顺序来选择可打印性、清晰性、唯一性和简洁性。例如, .config 打字比 .q2z 但这取决于独特性。(我不是为你的应用程序建议,这是一个例子。)同样, Q2Z 只是一种痛苦。:-)例如, .chemstuff 很容易打字,在其他地方可能不会被广泛使用。(再说一遍,不是建议,只是个例子。)

        6
  •  0
  •   Armen Michaeli    15 年前

    将其作为document_name.app_name.xml.gz,其中document_name和app_name是变量,后者是应用程序标题的一些易于阅读和识别的短字符串。

    现代系统相当灵活,完全不需要随着时间的推移而进一步拖拽3个字符的扩展。

    我同意.xml.gz会混淆用户,但是请记住,现代系统正在着手识别文件,而不是基于扩展名,而是通过探测文件头甚至内容来识别文件。实际上,用户甚至不经常看到扩展。对于gzipped XML文件,系统可能会决定首先在内存中解包文件流,然后发现它是一个文本XML文件,然后它可以将其“xmlns”作为应用程序标识符。然而,这种系统还没有得到广泛的应用。在任何情况下,都不要犯只通过扩展名打开文件的错误——聪明点,提高标准——请严格按照上述步骤来确定该文件是否可以被视为应用程序的文档。