gpt4 book ai didi

ios - 如何从base64string的服务器下载pdf文件?

转载 作者:行者123 更新时间:2023-11-29 11:34:26 26 4
gpt4 key购买 nike

我需要下载我在 api 响应中作为 base64 字符串获得的 pdf 文件。

如何根据cell标签保存到本地并使用documentcontroller预览?

Eg-api 响应是一组包含不同 pdf 文件的字典,其中我们有一个名为“pdf”的键:“zcvffaewww..”

我需要在 uitableviewcell 上点击 uibutton 下载这些 pdf 文件并在 documentcontroller 中预览。

请帮忙。

谢谢。

最佳答案

你得到的是 JSON 格式的 base64 字符串,这意味着你得到的文件名和文件类型也是正确的(如果没有得到也没关系)

第 1 步:您可以在 webView 中查看该 PDF,而不是下载。这是执行此操作的方法,

// convert your base64 string into NSData
NSData* myData = [NSData dataFromBase64String: yourBase64String];

然后写下面的代码在webView中显示pdf,

[_webView loadData:myData
MIMEType:@"application/pdf"
textEncodingName:@"NSUTF8StringEncoding"
baseURL:[NSURL URLWithString:@"https://www.google.co.in/"]];

// zooming pdf view

_webView.scalesPageToFit = YES;
_webView.autoresizingMask = (UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight);

它将在 webView 中显示 pdf

第二步:下载pdf,写代码

NSURL *URL = [NSURL URLWithString:
[NSString stringWithFormat:@"data:application/pdf;base64,%@",
numStr]];

NSData *urlData = [NSData dataWithContentsOfURL:url];
if ( urlData )
{
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];

NSString *filePath = [NSString stringWithFormat:@"%@/%@", documentsDirectory,@"filename.pdf"];
[urlData writeToFile:filePath atomically:YES];
}

关于ios - 如何从base64string的服务器下载pdf文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50598419/

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