使用 NSFileWrapper 保存文档
Saving document using NSFileWrapper
我正在开发一个基于文档的应用程序,允许用户插入图像、电影来制作作品。
保存文档时,我创建了一个 directoryFileWrapper,在其中放置了我的项目的 xml 表示,并使用原始路径为每个 images/movies 创建了一个 fileWrapper(如果尚未保存文档) 或者它在包内的相对路径。
保存后,用户可以将文档移动到另一个 location/mac 并且仍然可以访问其内容。
如果用户执行 "SaveAsOperation",并将其保存在同一位置,则文档会先被删除,然后我必须重新创建它。问题是我无法使用相对路径重新创建 fileWrappers,因为文档本身已被删除。
有什么方法可以防止它发生吗?
将现有文件保存到包中的正确方法是什么?
方法是:
在.h
- 创建一个实例 var NSFileWrapper。
在初始化中:
- 创建一个空目录FileWrapper。
每次你想在包装器中添加一个文件:
- 在目录FileWrapper中添加这个文件
在-readFromFileWrapper:(NSFileWrapper *)inFileWrapper ofType:error:
- 制作"inFileWrapper"你的文件包装器(不要忘记释放旧的并保留新的)
在 -fileWrapperOfType 中:错误:
- return 你是 fileWrapper.
如果你也想使用 NSFileWrapper,这个 link 可能会有帮助
https://www.cocoanetics.com/2012/09/back-on-mac-os-x-tutorial-for-ios-developers/
github 回购是 https://github.com/Cocoanetics/Examples
我正在开发一个基于文档的应用程序,允许用户插入图像、电影来制作作品。
保存文档时,我创建了一个 directoryFileWrapper,在其中放置了我的项目的 xml 表示,并使用原始路径为每个 images/movies 创建了一个 fileWrapper(如果尚未保存文档) 或者它在包内的相对路径。
保存后,用户可以将文档移动到另一个 location/mac 并且仍然可以访问其内容。
如果用户执行 "SaveAsOperation",并将其保存在同一位置,则文档会先被删除,然后我必须重新创建它。问题是我无法使用相对路径重新创建 fileWrappers,因为文档本身已被删除。
有什么方法可以防止它发生吗? 将现有文件保存到包中的正确方法是什么?
方法是:
在.h
- 创建一个实例 var NSFileWrapper。
在初始化中:
- 创建一个空目录FileWrapper。
每次你想在包装器中添加一个文件:
- 在目录FileWrapper中添加这个文件
在-readFromFileWrapper:(NSFileWrapper *)inFileWrapper ofType:error:
- 制作"inFileWrapper"你的文件包装器(不要忘记释放旧的并保留新的)
在 -fileWrapperOfType 中:错误:
- return 你是 fileWrapper.
如果你也想使用 NSFileWrapper,这个 link 可能会有帮助 https://www.cocoanetics.com/2012/09/back-on-mac-os-x-tutorial-for-ios-developers/ github 回购是 https://github.com/Cocoanetics/Examples