iOS AFNetWorking 下载pdf文档

+ (void)downLoadPdf:(NSString *)url pdf_id:(NSString *)pdf_id block:(APIFilePath)pdfFilePath {
    NSMutableDictionary *mPdf_dic = [NSMutableDictionary dictionaryWithDictionary:[Tool getLocalKey:PDFLOCAL_DIC]];
    NSURL *URL = [NSURL URLWithString:url];
    NSURLRequest *request = [NSURLRequest requestWithURL:URL];
   
    NSURLSessionConfiguration *configuration = [NSURLSessionConfiguration defaultSessionConfiguration];
    AFURLSessionManager *manager = [[AFURLSessionManager alloc] initWithSessionConfiguration:configuration];
   
    NSURLSessionDownloadTask *downloadTask = [manager downloadTaskWithRequest:request progress:nil destination:^NSURL *(NSURL *targetPath, NSURLResponse *response) {
       
        NSURL *documentsDirectoryURL = [[NSFileManager defaultManager] URLForDirectory:NSDocumentDirectory inDomain:NSUserDomainMask appropriateForURL:nil create:NO error:nil];
        NSLog(@"###%@", targetPath);  //原始文件
        NSLog(@"**%@", [response suggestedFilename]);  //文件名
        return [documentsDirectoryURL URLByAppendingPathComponent:[response suggestedFilename]];
       
    } completionHandler:^(NSURLResponse *response, NSURL *filePath, NSError *error) {
        NSLog(@"File downloaded to: %@", filePath);//下载成功后本地保存id以及文件路径
        NSString *stringUrl = [filePath absoluteString];
        mPdf_dic[pdf_id] = stringUrl;
        NSDictionary *pdfDic = [NSDictionary dictionaryWithDictionary:mPdf_dic];
        [Tool saveLocalvalue:pdfDic key:PDFLOCAL_DIC];
        pdfFilePath(stringUrl);
    }];
    [downloadTask resume];

}

*********************************************************************************************

查看文档时判断本地是否已经下载

#pragma mark - read
- (void)read {
    //本地已下载pdf文件
    NSDictionary *pdfDic = [Tool getLocalKey:PDFLOCAL_DIC];
    if (pdfDic == nil) {
        [Tool saveLocalvalue:pdfDic key:PDFLOCAL_DIC];
    }
    //文件路径
    NSString *filePathLocal;
    NSString *fileUrl = @"pdf的URL";
    NSString *fileKey = @"1471509244417_1471509259460";
    NSArray *keys = [pdfDic allKeys];
    BOOL isDownload = NO; //是否已经下载
    for (NSString *key in keys) {
        if ([key isEqualToString:fileKey]) {
            isDownload = YES;
            break;
        } else {
            isDownload = NO;
        }
    }
    if (isDownload) {
        filePathLocal = pdfDic[fileKey];
        [self openPdf:filePathLocal];
    } else {
         [WYAPI downLoadPdf:fileUrl pdf_id:fileKey block:^(NSString *filePath) {
             [self openPdf:filePath];
         }];
    }

}

时间: 2024-10-08 09:48:21

iOS AFNetWorking 下载pdf文档的相关文章

java实现从url路径中下载pdf文档到本地

package com.cellstrain.icell.util; import java.io.*;import java.net.*; public class DownloadPdf { /** * 从网络Url中下载文件 * @param urlStr * @param fileName * @param savePath * @throws IOException */ public static void downLoadByUrl(String urlStr,String fil

如何教你在NIPS会议上批量下载历年的pdf文档(另附04~14年NIPS论文下载链接)

如何获得NIPS会议上批量下载的链接? NIPS会议下载网址:http://papers.nips.cc/ a.点击打开上述网站,进入某一年的所有会议,例如2014年,如下图 b.然后对着当前网页点击鼠标右键->点击审查元素(这里我用的是360浏览器打开),(如下图) 下一步----------------------------------------------------------------------------------------------------------------

如何把下载的PDF文档转换格式

有的时候我们更喜欢在一些资源丰富的平台上下载文档,如豆丁.豆瓣等等,在豆丁上下载了一些文档有些是PDF格式的,但是我想把这些PDF文档转换成可编辑的Word格式文字,对于一些Word扫描的PDF文档该怎么处理呢?这里有些经验供大家分享. 将PDF扫描件转换成Word文档比较麻烦,有些PDF转换成Word转换器都是转换不了的,转换出来的Word文档也只会时Word而已.对此大家可以尝试迅捷PDF转换器,针对加密.乱码.图文形式文字,都可以很好转换处理.而且能保证质量. 迅捷PDF转换器就是一个不错

一起学微软Power BI系列-官方文档-入门指南(7)发布与共享-终结篇+完整PDF文档

接触Power BI的时间也只有几个月,虽然花的时间不多,但通过各种渠道了解收集,谈不上精通,但对一些重要概念和细节还是有所了解.在整理官方文档的过程中,也熟悉和了解了很多概念.所以从前到后把微软官方的入门稳定粗略的介绍了一下.本篇文章也是这个小系列的终结篇.我将所有的章节整理为了一个完整的PDF文档分享给大家.其实了解之后发现文档还是有些简单的,过程其实没介绍到.因为微软也提供了支持文档,但限于篇幅太大,我就不打算按照原文一个个复制给大家了.入门文档是让大家有个粗略的了解.技术文档就是细节了,

教你如何将word转换成PDF文档使用

对于各种不同文档格式的转换对文字工作者来说可谓是"家常便饭",而最让人头疼的莫过于office文档与pdf文档之间的互相转换.有时候遇到需要文字编辑的就得转换成word文档,有时候要成稿传输了,又得转换成pdf格式,这来回之间的转换,如果没有一个好的转换器作为帮手,还真的是会让人抓狂. 今天小编和大家介绍一款小编平时用的转换器软件.除了将word转成pdf,更重要的是能够对一些常见类型的文档转换格式.像word.ppt.excel.pdf等都可以转为你需要的文档格式.另外还能对文档进行

PHP制作pdf文档方法

本篇博客是在看完 php+mysql web书以后自己的测试代码,虽然是测试代码,但不是简单的粘贴复制,为了学习thinkPHP框架,自己就用这个来做的,而且这本书已经有年头了.原书的代码中的方法,在查阅手册的时候,很多都已经弃用了,所以分享给大家还是有必要的.php制作pdf文档的方法有很多,我写的只是其中一种,大家有时间可以多看看.好了,进入正题 准备工作: 1.php手册(在线php关于pdf地址: http://php.net/manual/zh/intro.pdf.php ) 2.PD

CentOS6.4下使用默认的文档查看器打开PDF文档乱码的解决方案

 最近在CentOS6.4下使用其默认的文档查看器打开PDF文档时出现乱码的方块,有两种方法可以解决.    方法一:修改/etc/fonts/conf.d/49-sansserif.conf文件,如下: [html] view plaincopy <?xml version="1.0"?> <!DOCTYPE fontconfig SYSTEM "fonts.dtd"> <fontconfig> <!-- If the f

Java生成PDF文档(表格、列表、添加图片等)

需要的两个包及下载地址: (1)iText.jar:http://download.csdn.net/source/296416 (2)iTextAsian.jar(用来进行中文的转换):http://download.csdn.net/source/172399 代码如下: 1 import java.awt.Color; 2 import java.io.FileOutputStream; 3 import com.lowagie.text.Cell; 4 import com.lowagi

手机打开PDF文档中文英文支持(乱码问题)解决攻略

电子书的优点很多,随时随地阅读,无论白天黑夜走路坐车都能阅读:想确认一下某句话是不是这本书里的,搜索一下就可以知道:搬家也不用发愁,几万本书带在身上,依然轻松步行.我买了一台平板主要动因就是为了看书,但是有时候会遇到一些问题:一本PDF格式的电子书在电脑上打开时显示正常,用手机打开却出现乱码.通过网络查询,找到了解决办法.这里分享给大家.过程不算很麻烦.一本书2-3分钟搞定. PDF文件自身是可以嵌入字体的,这样就可以在任何语言的设备上直接阅读,而不用考虑该设备上是否有相应的字体.但是PDF文件