首页 > 解决方案 > 在 Xcode 中解压缩捆绑资源后出现错误的目录

问题描述

我的 Xcode 项目中有一个 zip 文件,我将其添加为捆绑资源: 在此处输入图像描述

此 zip 的目的是在测试期间解压缩并检查内部 json 文件。

到目前为止,它一直像魅力一样发挥作用。不管有什么新功能,我都必须更新 json 文件,所以我用新的 zip 替换了 zip。

现在的问题是,当我使用'Zip', '1.1.0'库解压缩文件时,我在模拟器文档目录中得到了冗余级别的深度:预期的 json 位置:

/Library/Developer/CoreSimulator/Devices/851211C4-7115-468F-8BE3-00CB08B154C5/data/Containers/Data/.../Documents/decrypted_backup_with_groups/contacts.json

解压后的真实位置:

/Library/Developer/CoreSimulator/Devices/851211C4-7115-468F-8BE3-00CB08B154C5/data/Containers/Data/.../Documents/decrypted_backup_with_groups/decrypted_backup_with_groups/contacts.json

代码:

let zippedFiles = try Zip.quickUnzipFile(path)

                let contactsFileJson = NSString(string: "\(zippedFiles.path)/contacts.json").expandingTildeInPath
                let contactsData = try Data(contentsOf: URL(fileURLWithPath: contactsFileJson))
                let backupContacts = try JSONDecoder().decode(ContactsBackupDTO.self, from: contactsData)

错误:

错误域 = NSCocoaErrorDomain 代码 = 260 “无法打开文件“contacts.json”,因为没有这样的文件。”

标签: iosswift

解决方案


推荐阅读