【问题标题】:":"-Character in a windows filesystem (formerly: ":"-Character in Delphi TFileStream)":"-windows 文件系统中的字符(以前:":"-Delphi TFileStream 中的字符)
【发布时间】:2015-08-09 16:11:32
【问题描述】:

我试图在文件流的文件名字符串中添加一个冒号。 在 Delphi 的 TFileStream 中不能使用冒号是真的吗? 如果可以,那怎么做?

编辑:感谢所有反对票。这是应得的。回想起来,我问了一个愚蠢的问题......

【问题讨论】:

  • 这与Delphi无关,也与编程无关。您应该问的问题是您是否可以在 Windows 上的文件名中使用冒号。
  • 对不起!我应该知道的!
  • 现在我被提醒了真正的问题是什么,这似乎是一个愚蠢的问题!

标签: windows filesystems character filenames


【解决方案1】:

在我认为是您的平台的 Windows 上,冒号是保留字符,因此不允许在文件名中使用。这记录在这里:

File and Directory Names

命名约定
以下基本规则使应用程序能够创建和处理文件和目录的有效名称,而不管文件系统如何:

...

  • 使用当前代码页中的任何字符作为名称,包括 Unicode 字符和扩展字符集 (128–255) 中的字符,以下除外

    • 以下保留字符:

      • >(大于)
      • :(冒号)
      • "(双引号)
      • /(正斜杠)
      • \(反斜杠)
      • | (竖条或竖管)
      • ? (问号)
      • *(星号)

...

【讨论】:

  • 正如 TLama 所说,这个问题是特定于 Windows 文件系统的,而不是 Delphi 本身的问题。在这些多平台支持的日子里(以及带有此类支持的 OP 标记的 XE5),对于什么是 Delphi 问题和什么是平台问题,我们可能应该更准确地回答我们的问题。德尔福本身对 w.r.t 没有任何保留。文件名字符,在某些 Delphi 支持的平台上,文件名中允许使用冒号,例如OS X(尽管出于明显的原因不推荐)。也许在这些方面添加澄清?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2023-04-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-07-19
  • 1970-01-01
相关资源
最近更新 更多