Swift 如何将url中的pdf存储在手机存储器中

Swift 如何将url中的pdf存储在手机存储器中,swift,Swift,我有pdf url,我想知道如何将pdf存储在手机内存中的代码。我想储存该pdf文件,并想通过手机查看该pdf文件。我正在使用swift 4和Xcode进行编码swift 4 调用此函数仅传递url,下载后将返回文件url func get_file(httpUrl:String) { let documentsUrl = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask).fir

我有pdf url,我想知道如何将pdf存储在手机内存中的代码。我想储存该pdf文件,并想通过手机查看该pdf文件。我正在使用swift 4和Xcode进行编码

swift 4

调用此函数仅传递url,下载后将返回文件url

func get_file(httpUrl:String)
    {
        let documentsUrl =  FileManager.default.urls(for: .documentDirectory, in: .userDomainMask).first!
        let url = URL(string: httpUrl)!
        let destinationUrl = documentsUrl.appendingPathComponent(url.lastPathComponent)

        let session = URLSession(configuration: URLSessionConfiguration.default, delegate: nil, delegateQueue: nil)
        var request = URLRequest(url: url)
        request.httpMethod = "GET"
        let task = session.dataTask(with: request, completionHandler:
        {
            data, response, error in
            if error == nil
            {
                if let response = response as? HTTPURLResponse
                {
                    if response.statusCode == 200
                    {
                        if let data = data
                        {
                            if let _ = try? data.write(to: destinationUrl, options: Data.WritingOptions.atomic)
                            {
                                print(destinationUrl.absoluteString)
                            }
                            else
                            {
                                print(error!)
                            }
                        }
                        else
                        {
                            print(error!)
                        }
                    }
                }
            }
            else
            {
                print(error!)
            }
        })
        task.resume()

    }
这是你的档案

let documentsUrl =  FileManager.default.urls(for: .documentDirectory, in: .userDomainMask).first!
        let url = URL(string: file_str)!
        let destinationUrl = documentsUrl.appendingPathComponent(url.lastPathComponent)

在这个帖子里有一个答案:请参考