核心数据文件的位置iOS 10

我想我们SQLite浏览器看到我的核心数据对象。 我无法find核心数据保存在哪里的SQL文件。 我看着应用程序文档文件夹,但没有什么。

你知道IOS 10(模拟器)的核心数据保存在SQLite文件上吗?

我在XCode 8 Swift 3 OS macOS Sierra上进行了testing

IOS 10

在你的Appdelegate.swif t

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool { let urls = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask) print(urls[urls.count-1] as URL) return true } 

1.常量.documentDirectory表示我们正在寻找Document目录

2.常量.userDomainMask将我们的search限制在我们的应用程序的沙箱中。

产量

 file:///Users/Ashok/Library/Developer/CoreSimulator/Devices/F629F99F-C745-46EB-8A11-01BC9FF1E592/data/Containers/Data/Application/3B373C93-71A2-46E9-8AF7-EF407C39429F/Documents/ 

点击前往 – >转到文件夹 – >粘贴path – >按回车

在这里输入图像说明

然后转到库 – >应用程序支持 – > filename.sqlite

在这里输入图像说明

编辑

要么

打开你的terminal,inputfind ~ -name 'HitTest.sqlite'然后回车。

 Ashoks-MacBook-Pro:Desktop Ashok$ find ~ -name 'HitTest.sqlite' /Users/Ashok/Library/Developer/CoreSimulator/Devices/F629F99F-C745-46EB-8A11-01BC9FF1E592/data/Containers/Data/Application/3B373C93-71A2-46E9-8AF7-EF407C39429F/Documents/HitTest.sqlite 

从上面的输出你可以清楚地看到你的sqlite数据库的path

您可以使用DB Browser for SQLite打开。

试试这个,我没有检查它的ios 10,但它的工作在以前的所有版本

产品>scheme>编辑scheme>运行>参数

在“ 启动时通过的参数”中添加此参数

-com.apple.CoreData.SQLDebug 1

每当应用程序启动时它将打印数据库的path请参阅这个参数是这样的

Swift 3.x

在您的AppDelegate文件中finddidFinishLaunchingWithOptions并添加此行。

  let path = NSSearchPathForDirectoriesInDomains(.applicationSupportDirectory, .userDomainMask, true) print("\(path)") 

对于XCODE 8.0(iOS 10): –

.sqlite持久存储的path是:

/ Users / Ashish / Library / Developer / CoreSimulator / Devices /“YourDeviceId”/ data / Containers / Data / Application /“Application Id”/ Library / Application Support /“FileNamePassedInPersistentContainer.sqlite”