我正在创建一个描述文件的 XML 1.0 应用程序(就像其他人所做的那样)。目前我有一个file
需要name
属性的元素;该属性的值是文件的名称。
但我相信这行不通。包含特殊字符&
、<
和'
的文件名"
很棘手,但您可以使用预定义的实体引用。但是包含控制字符的文件名呢?虽然非常罕见,但这些都是可能的。
在我看来,没有办法为我的目的创建 XML 应用程序,因为 XML (1.0) 不允许在文本中的任何位置使用控制字符。Quoth标准:
字符 ::= #x9 | #xA | #xD | [#x20-#xD7FF] | [#xE000-#xFFFD] | [#x10000-#x10FFFF]
有什么技巧可以解决这个问题吗?它会在 XML 1.1 中工作,还是也有限制?
在我的 GNU/Linux 计算机上,我可以这样做来创建两个名称中包含控制字符的文件:
touch `echo -e 'SP\a'`
touch `echo -e 'SP\v'`
ls SP*