如何解压缩下载的数据,并从解压缩的文件(index.html)中使用特定的文件来加载在UIWebview中



我坚持解压缩一个zip文件,并从解压缩的内容(index.html)中获取一个特定的文件,最后使用index.html来加载UIWebview。

我使用GZIP库解压缩正在下载的文件

[data gunzippedData];

是我使用GZIP解压缩数据的方法。

使用以下代码从web解压缩文件。

下载ZipArchive.h和#import到你的文件中。

NSURL *urlVersion = [NSURL URLWithString: [tempDirOuter objectForKey:@"filename"]];
                             NSLog(@"txt File : %@",urlVersion);
                             NSError *error = nil;
                             // 2
                             NSData *data = [NSData dataWithContentsOfURL:urlVersion options:0 error:&error];
                             NSString *textFilePath;
                             if(!error)
                             {
                                 // 3
                                 NSArray *paths = NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES);
                                 NSString *path = [paths objectAtIndex:0];
                                 NSString *strFileName = [tempDirOuter objectForKey:@"fileNameOnly"];
                                 NSString *zipPath = [path stringByAppendingPathComponent:strFileName];
                                 [data writeToFile:zipPath options:0 error:&error];
                                 ZipArchive *za = [[ZipArchive alloc] init];
                                 // 1
                                 if ([za UnzipOpenFile: zipPath])
                                 {
                                     // 2
                                     BOOL ret = [za UnzipFileTo: path overWrite: YES];
                                     if (NO == ret){} [za UnzipCloseFile];
                                     // 3
                                     NSString *StrName = [strFileName stringByReplacingOccurrencesOfString:@".zip" withString:@".txt"];
                                     textFilePath = [path stringByAppendingPathComponent:StrName];
                                 }
                                 if(!error)
                                 {
                                     // TODO: Unzip
                                 }
                                 else
                                 {
                                     NSLog(@"Error saving file %@",error);
                                 }
                             }
                             else
                             {
                                 NSLog(@"Error downloading zip file: %@", error);
                             }
                             NSString *webVersion = [NSString stringWithContentsOfFile:textFilePath encoding:NSASCIIStringEncoding error:nil];

在字符串webVersion中,您将获得html路径

最新更新