ios - DBAccess 创建自定义 DBAccessSettings
<p><p>我正在测试 DBAccess 以查看是否可以在项目中使用它。我在更改 sqlite 文件的位置时遇到问题,我希望它位于缓存目录中。这是我迄今为止在 AppDelegate.m 中编写的部分代码:</p>
<pre><code>- (DBAccessSettings*)getCustomSettings {
DBAccessSettings *settings = [ init];
NSURL *applicationCachesDirectory = [[ URLsForDirectory:NSCachesDirectory inDomains:NSUserDomainMask] lastObject];
settings.databaseLocation = ;
settings.defaultDatabaseName = @"myDefaultDB";
return settings;
}
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
;
;
];
return YES;
}
</code></pre>
<p>但是使用上面的代码,我收到以下错误消息:</p>
<p><strong>错误>>无法打开数据库文件</strong></p>
<p>你能在这里解释一下吗?</p></p>
<br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
<p><p>我不熟悉 DBAccess,但你有以下几行:</p>
<pre><code>NSURL *applicationCachesDirectory = [[ URLsForDirectory:NSCachesDirectory inDomains:NSUserDomainMask] lastObject];
settings.databaseLocation = ;
</code></pre>
<p>这将检索 URL 字符串(以 <code>file://</code> 开头的字符串),而不是文件路径。如果你想要那个文件夹的路径,你想使用 <code>path</code>:</p>
<pre><code>settings.databaseLocation = ;
</code></pre>
<p>坦率地说,<a href="http://docs.db-access.org/interface_d_b_access_settings.html#ac8bff478fd39fc2fb0d33d7220d6b82c" rel="noreferrer noopener nofollow">the documentation</a>关于它是否期望 URL 字符串或路径是模棱两可的,但我认为它期望后者。</p></p>
<p style="font-size: 20px;">关于ios - DBAccess 创建自定义 DBAccessSettings,我们在Stack Overflow上找到一个类似的问题:
<a href="https://stackoverflow.com/questions/28154376/" rel="noreferrer noopener nofollow" style="color: red;">
https://stackoverflow.com/questions/28154376/
</a>
</p>
页:
[1]