gpt4 book ai didi

ios - 如何在 Swift 中找到正确的路径

转载 作者:可可西里 更新时间:2023-11-01 00:16:34 25 4
gpt4 key购买 nike

我从文档中得到这段代码,我找不到我的文件的路径,我需要将“contacts.db”文件从支持文件文件夹复制到设备中的应用程序而不是在模拟器中以供离线使用.

func copyItemAtPath(_ srcPath: String,
toPath dstPath: String,
error error: NSErrorPointer) -> Bool

srcPath = 您要移动的文件或目录的路径。此参数不能为 nil。

dstPath = 放置 srcPath 副本的路径。此路径必须包括文件或目录在其新位置的名称。此参数不能为 nil。

error = 在输入时,指向错误对象的指针。如果发生错误,此指针将设置为包含错误信息的实际错误对象。如果您不想要错误信息,您可以为此参数指定 nil。

非常感谢任何帮助。 :)

最佳答案

您只需将“contacts.db”拖放到 Project Navigator 中,然后您可以通过以下方式找到该文件的路径:

let sourcePath = NSBundle.mainBundle().pathForResource("contacts", ofType: "db")

之后,您可以将该文件复制到应用程序的文档文件夹中,为此您需要该文件夹路径:

let doumentDirectoryPath = NSSearchPathForDirectoriesInDomains(.DocumentDirectory, .UserDomainMask, true).first as! String
let destinationPath = doumentDirectoryPath.stringByAppendingPathComponent("contacts1.db")

现在您有了 sourcePathdestinationPath,因此您可以将该文件复制到文档文件夹中:

NSFileManager().copyItemAtPath(sourcePath!, toPath: destinationPath, error: &error)

如果你想检查错误,你可以这样做:

var error : NSError?
NSFileManager().copyItemAtPath(sourcePath!, toPath: destinationPath, error: &error)
if let error = error {
println(error.description)
}

如果您的 sourcePath 为 nil,则转到 Targets->YouApp->Build Phases->copy Bundle Resources 并在那里添加您的文件。希望这会有所帮助。

关于ios - 如何在 Swift 中找到正确的路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30184273/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com