• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

ios - 从路径获取文件内容

[复制链接]
菜鸟教程小白 发表于 2022-12-11 19:22:25 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题

我正在为几行令人尴尬的代码而苦苦挣扎。我已经阅读了很多答案,但似乎没有一个有效。在我的函数中,我从选择的文档中获取文件路径:

func documentPicker(_ controller: UIDocumentPickerViewController, didPickDocumentAt url: URL) {

        let urlString = url.path
        let fileName = url.lastPathComponent
        let ref = DataService.instance.imagesStorageRef.child("\(fileName)")
         var contents = try? Data(contentsOf: url)
         print("contents: \(contents)")



        let uploadTask = ref.putData(contents! as Data, metadata: nil, completion: { (metadata, error) in ...}
}

file:///private/var/mobile/Library/Mobile%20Documents/com~apple~CloudDocs/nutella.jpg contents: nil

然后我尝试获取该文件路径的内容,以便将其传递给上传函数,该函数将其上传到 firebase。但是,无论我如何尝试获取该内容,我总是得到 nil 值。请引导我走向正确的方向。



Best Answer-推荐答案


另一种可能对您有所帮助的方法。为此,您需要将该文档转换为数据形式,然后您可以将其发送到服务器

我在这里粘贴示例代码..

 func documentPicker(_ controller: UIDocumentPickerViewController, didPickDocumentAt url: URL) {
        let fileURL = url as URL
        print("The Url is : \(fileURL)")
        let fileNameWithoutExtension = fileURL.pathExtension
        print("fileNameWithoutExtension: \(fileNameWithoutExtension)")
        do {
            let data = try Data(contentsOf: fileURL)
            print("data=\(data)")
            //TODO: call upload API
            self.sendAttachments()
        }
        catch {/* error handling here */}
    }

关于ios - 从路径获取文件内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47518548/

回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注0

粉丝2

帖子830918

发布主题
阅读排行 更多
广告位

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap