webView 加载本地文件 - html/htm pdf docx tx
2016-03-24 14:33
267 查看
- (void)viewDidLoad { [super viewDidLoad]; [self setupUI]; NSString *path = [[NSBundle mainBundle] pathForResource:@"关于.docx" ofType:nil]; NSURL *url = [NSURL fileURLWithPath:path]; NSLog(@"%@", [self mimeType:url]); //webview加载本地文件,可以使用加载数据的方式 //第一个诶参数是一个NSData, 本地文件对应的数据 //第二个参数是MIMEType //第三个参数是编码格式 //相对地址,一般加载本地文件不使用,可以在指定的baseURL中查找相关文件。 //以二进制数据的形式加载沙箱中的文件, NSData *data = [NSData dataWithContentsOfFile:path]; [self.webView loadData:data MIMEType:@"application/vnd.openxmlformats-officedocument.wordprocessingml.document" textEncodingName:@"UTF-8" baseURL:nil]; } #pragma mark 加载docx文件 - (void)loadDOCX { NSString *path = [[NSBundle mainBundle] pathForResource:@"关于.docx" ofType:nil]; NSURL *url = [NSURL fileURLWithPath:path]; NSLog(@"%@", [self mimeType:url]); NSData *data = [NSData dataWithContentsOfFile:path]; [self.webView loadData:data MIMEType:@"application/vnd.openxmlformats-officedocument.wordprocessingml.document" textEncodingName:@"UTF-8" baseURL:nil];} #pragma mark 加载pdf文件 - (void)loadPDF { NSString *path = [[NSBundle mainBundle] pathForResource:@"iOS6Cookbook.pdf" ofType:nil]; NSURL *url = [NSURL fileURLWithPath:path]; NSLog(@"%@", [self mimeType:url]); NSData *data = [NSData dataWithContentsOfFile:path]; [self.webView loadData:data MIMEType:@"application/pdf" textEncodingName:@"UTF-8" baseURL:nil]; } #pragma mark 加载本地文本文件 - (void)loadText { NSString *path = [[NSBundle mainBundle] pathForResource:@"关于.txt" ofType:nil]; NSURL *url = [NSURL fileURLWithPath:path]; NSLog(@"%@", [self mimeType:url]); NSData *data = [NSData dataWithContentsOfFile:path]; [self.webView loadData:data MIMEType:@"text/plain" textEncodingName:@"UTF-8" baseURL:nil]; } #pragma mark 加载本地html文件 - (void)loadHTML { NSString *path = [[NSBundle mainBundle] pathForResource:@"demo.html" ofType:nil]; NSURL *url = [NSURL fileURLWithPath:path]; NSLog(@"%@", [self mimeType:url]); NSData *data = [NSData dataWithContentsOfFile:path]; [self.webView loadData:data MIMEType:@"text/html" textEncodingName:@"UTF-8" baseURL:nil]; } #pragma mark 获取指定URL的MIMEType类型 - (NSString *)mimeType:(NSURL *)url { //1NSURLRequest NSURLRequest *request = [NSURLRequest requestWithURL:url]; //2NSURLConnection //3 在NSURLResponse里,服务器告诉浏览器用什么方式打开文件。 //使用同步方法后去MIMEType NSURLResponse *response = nil; [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:nil]; return response.MIMEType; }
相关文章推荐
- .android:allowTaskReparenting 等Activity 的task属性
- APICloud云修复再升级 增加热重启APP功能
- clnt_create: RPC: Port mapper failure - Unable to receive: errno 113 (No route to host)
- [置顶] Android开发之 当前日期String类型转date类型 java代码中实现方法
- ios 图片截取功能 图片拼接功能
- Android中获取apk文件包名,名称,图标等信息
- [置顶] Android开发之java代码中获取当前系统的时间工具类
- Object新方法总结
- iOS小问题--判断设备是否静音
- Android Launcher 学习笔记
- 《第一行代码:Android》读书笔记——第8章 通知和手机多媒体
- Android App在线程中创建handler的方法讲解
- Swift-'as?','as'用法
- CoordinateLayout onMeasure流程分析
- Android快速开发最喜欢使用的几种Android开发框架
- Android6.0运行时权限处理
- IOS开发之记录用户登陆状态,ios开发用户登陆
- Android 读取<meta-data>元素的数据
- 在浏览器中运行java applet
- ViewPager+fragment+webView中webView和ViewPager冲突