OS X 数据文件编辑器保存到 XML:是不是基于文档?
Posted
技术标签:
【中文标题】OS X 数据文件编辑器保存到 XML:是不是基于文档?【英文标题】:OS X Data file editor saving to XML: Document based or not?OS X 数据文件编辑器保存到 XML:是否基于文档? 【发布时间】:2013-02-25 23:44:55 【问题描述】:所以我正在尝试为我拥有的 ios/android 应用程序制作数据编辑器。我希望能够编辑 3 个单独的数据文件,并且我想将它们保存到 plist 文件或 xml 文件中。我打算在应用程序中使用 Core Data。我遇到的问题:
1)。这应该是基于文档的应用程序吗?
2)。如果是这样,我将如何设置它以允许编辑 3 种不同结构的文件?
3)。如果是这样,我将如何设置基于文档的应用程序以使用常规 plist/xml 文件作为文件类型而不是某些自定义文件类型?
计划是让编辑器能够打开和编辑文件,然后可以将保存的文件复制到iOS和Android应用程序的项目资源中。
【问题讨论】:
这些文件需要保持在一起,还是只是三种不同的文件类型?编辑一个而不编辑其他一个或两个会导致问题吗? 它们是三个独立的文件。编辑一个而不编辑另外两个不会造成问题,除非其中没有数据。 【参考方案1】:1。应用程序是否应该基于文档?
是的。
2。如何允许编辑三种不同结构的文件?
从以下任意一项中选择:
-
在文档类型列表中创建三个字典,这三个字典都引用同一个文档类。
与上述相同,但
windowNibName
或 makeWindowControllers
根据文档类型选择 UI。换句话说,共享模型代码,但不同的视图层次结构。 (我可能会选择其中任何一个。)
创建三个文档类型字典,每个字典都有自己的文档类。
您选择哪一种取决于类型的不同程度。
您可能还希望为每种文档类型导出一个 UTI。 Xcode 不会帮助你。您需要手动编写每个 UTI 字典。
3。如何将基于文档的应用程序设置为使用常规 plist/xml 文件作为文件类型而不是某些自定义文件类型?
如果您导出一个或多个 UTI,您应该适当地设置每个 UTI 的父 UTI,但这是建议性的;这意味着您将能够使用通用 plist 或 XML 编辑器/查看器打开文档。
在每个文档类中读入和写出数据由您决定。您将不得不使用 NSPropertyListSerialization、NSXMLParser、PRHXMLParser、NSXMLDocument 或其他您认为合适的东西; NSDocument 不会为您处理文件格式。
【讨论】:
以上是关于OS X 数据文件编辑器保存到 XML:是不是基于文档?的主要内容,如果未能解决你的问题,请参考以下文章
使用 Alamofire 上传本地 OS X IPA 文件和 XML
Mac OS X 10.7.1修改hosts文件时提示“您不是文件hosts的所有者,因此没有权限写到该文件”求问要如何解决
CGI 脚本,使用终端 (OS X) 将 `printf` 保存到文件