命名文件的策略,以便通过浏览器下载

时间:2013-08-08 10:03:30

标签: file download naming-conventions filenames

我正在开发一个包含大量(PDF)下载的网站。我需要提出一个命名这些文件的策略。

以下是我的主要标准:

  1. 文件名必须在所有操作系统上合法。
  2. 文件名必须是URL安全的。
  3. 文件名必须尽可能可读。
  4. 我已经阅读了很多关于这个主题的内容,并且阅读了很多关于哪些角色能够和不能被使用以及哪种策略最佳的相互矛盾的观点。

    应用于命名文件的最佳规则集是什么,以满足上述三个条件。

    我使用Rails 3进行记录。

1 个答案:

答案 0 :(得分:1)

我相信几乎任何ASCII字符都可以在URL中转义(即%20是一个空格)。

Windows中不允许的字符是\/:*?"<>|(根据Windows),并且您不能在同一目录中具有相同名称但在不同情况下的文件(即FILE.txt和{{1分类为同名)。 Linux和Mac是相当允许的。 所有操作系统还是那些?还有一些鲜为人知的操作系统,但它们通常不用于通用目的。

从技术上讲,您可以将其限制为the ASCII table中的空格(0x20)到file.txt(0x7E):(除了Windows不允许的内容)

ASCII

但就可读性而言,如果您不想转义URL,最简单的方法是将其限制为0-9,AZ和az以及某种分隔符(如~)总是很好有

我找到了this table,它可以让您非常了解需要为网址转义的内容:

_