swift - 是否有一个共同文件夹,我可以使用模拟器或我的设备在其中保存和加载数据?
问题描述
我目前正在使用以下代码将我的数据保存在文档目录中:
let documentsDirectory = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask).first!
let archiveURL = documentsDirectory.appendingPathComponent("myData").appendingPathExtension("plist")
let pListEncoder = PropertyListEncoder()
if let encodedTableArray = try? pListEncoder.encode(myData) {
try? encodedTableArray.write(to: archiveURL, options: .noFileProtection)
}
当我打印documentsDirectory
时,无论我的应用程序是在模拟器还是我的设备(插入我的计算机)上运行,路径都不相似:
file:///Users/userName/Library/Developer/CoreSimulator/Devices/E80B48AB-C269-48ED-9AF4-AC55C34C911E/data/Containers/Data/Application/D3C87E08-DC0E-4F53-ABC7-C930DFAC4EF8/Documents/
file:///var/mobile/Containers/Data/Application/F5BE0EB0-F2C7-4842-B039-01D5F8CCA4A2/Documents/
,
分别。
是否有模拟器和设备都可以访问的路径?
PS:我使用这条路径只是因为我读到它应该是保存我的数据类型(类似于表格列表)时最合适的路径,我仍在学习持久性,所以我不完全理解但是为什么。
谢谢您的帮助 !
解决方案
推荐阅读
- mysql - 将“其他”案例集中在一起进行计数
- javascript - 在超链接之外点击触发
- python - 将 ORCL 表读入 Dask 数据帧
- javascript - 如何修复 Jquery 模板?段落长度问题
- python - Python:向熊猫数据框添加条件列,更多pythonic解决方案?
- uwp - 网格背景是否始终为 IsHitTestVisible="True"?
- wso2 - 在 WSO2 API Manager 中将 LifeCycle 添加到租户
- scala - 使用 akka-http 回答特定的客户端并且还支持广播
- ejabberd - ejabberd-18.12:在钩子中解析数据包
- python - 如何在 python 中为密码生成器正确格式化字符串?