Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Xcode 在ios中将pdf文件从文档目录上载到服务器_Xcode_Swift - Fatal编程技术网

Xcode 在ios中将pdf文件从文档目录上载到服务器

Xcode 在ios中将pdf文件从文档目录上载到服务器,xcode,swift,Xcode,Swift,如何将位于文档目录中的pdf文件上载到服务器 感谢您的帮助SWIFT 2.0:使用以下代码将pdf文件转换为NSData。并使用POST服务将数据上传到服务器 let documentDirectory = NSSearchPathForDirectoriesInDomains(.DocumentDirectory, .UserDomainMask, true)[0] var filePath = documentDirectory.stringByAppendingString

如何将位于文档目录中的pdf文件上载到服务器


感谢您的帮助

SWIFT 2.0:使用以下代码将pdf文件转换为NSData。并使用POST服务将数据上传到服务器

    let documentDirectory = NSSearchPathForDirectoriesInDomains(.DocumentDirectory, .UserDomainMask, true)[0]
    var filePath = documentDirectory.stringByAppendingString("/")
    filePath     = filePath.stringByAppendingString("final.pdf")
    let pdfData  = NSData(contentsOfFile: filePath)

这里,“filePath”是文档目录中名为“final.pdf”的pdf文件的路径

SWIFT 2.0:使用以下代码将pdf文件转换为NSData。并使用POST服务将数据上传到服务器

    let documentDirectory = NSSearchPathForDirectoriesInDomains(.DocumentDirectory, .UserDomainMask, true)[0]
    var filePath = documentDirectory.stringByAppendingString("/")
    filePath     = filePath.stringByAppendingString("final.pdf")
    let pdfData  = NSData(contentsOfFile: filePath)

这里,“filePath”是文档目录中名为“final.pdf”的pdf文件的路径

是否有一种方法可以在不将文件转换为NSData的情况下上载?您无法将文件直接上载到服务器。需要将其转换为通信所需的格式。您可以通过将文件转换为Base64编码字符串来完成上载。但是,对于这一点,转换也将是这样的:文件->NSData->Base64String。它还取决于服务器支持哪种格式。还要查找这些参考:假设我有一个500 mb的大图像。我已将其存储在本地,我想上传该图像。我做1。data=NSData(contentsOfFile:filePath)2。var image=UIImage(数据:data)3。使用类似图像的扩展名检查图像方向。checkImageOrientation()。然后,我使用UIImageJPEG表示将图像转换为NSData,它将内存使用量激增到4GB。我不希望因为应用程序崩溃而出现这种情况。由于图像的大小更大,在进行任何格式转换之前,您需要按比例缩放图像,以减小图像的大小而不损失图像的质量。分步骤:缩放图像->获取新缩放图像->转换为NSData或Base64字符串->上载有没有一种方法可以在不将文件转换为NSData的情况下上载?您无法将文件直接上载到服务器。需要将其转换为通信所需的格式。您可以通过将文件转换为Base64编码字符串来完成上载。但是,对于这一点,转换也将是这样的:文件->NSData->Base64String。它还取决于服务器支持哪种格式。还要查找这些参考:假设我有一个500 mb的大图像。我已将其存储在本地,我想上传该图像。我做1。data=NSData(contentsOfFile:filePath)2。var image=UIImage(数据:data)3。使用类似图像的扩展名检查图像方向。checkImageOrientation()。然后,我使用UIImageJPEG表示将图像转换为NSData,它将内存使用量激增到4GB。我不希望因为应用程序崩溃而出现这种情况。由于图像的大小更大,在进行任何格式转换之前,您需要按比例缩放图像,以减小图像的大小而不损失图像的质量。步骤:缩放图像->获取新缩放图像->转换为NSData或Base64字符串->上载