我正在尝试为xcode项目找到解析器,但我不认识标记的类型。
格式示例:
// !$*UTF8*$!
{
<KEY> = <VALUE>;
<KEY> = <VALUE>;
<KEY> =
{
<KEY> =
{
<KEY> = <VALUE>;
<KEY> = <VALUE>;
<KEY> = <VALUE>;
};
<KEY> = ( <VALUE>, <VALUE>, <VALUE>, <VALUE>, );
};
}
这是什么类型的标记?
这是 Apple 切换到 xml 样式属性列表之前的旧式属性列表。您可以在使用 NSDictionary
/NSArray
+<dictionary/array>WithContentsOfFile:
中使用适当的类,具体取决于属性列表的基本对象是数组(用括号括起来的逗号分隔的值)还是字典(用大括号括起来的键值对)。如果你找回nil
,你就知道你选错了。
+<collection>WithContentsOfFile:
会将整个文件转换为 Foundation 框架对象。
我找到了这个,http://www.monobjc.net/index.php?page=xcode-project-file-format,它指出
Xcode 项目文件是一个旧式的 plist(下一个样式),基于大括号来分隔层次结构。该文件以显式编码信息开头,通常是 UTF-8 信息。这意味着文件在开始时不得带有 BOM(字节排序标记),否则解析将失败。
这似乎是对完整项目文件格式进行逆向工程的尝试。