我在我的IOS应用程序文档文件夹中有一个file.xlsx文件。我想在UIWebview中打开此excel文件,但是我遇到了以下错误:
Error Domain=WebKitErrorDomain Code=102 "Frame load interrupted"
但是PDF和CSV文件可以打开,我是IOS新手,在过去的两天里尝试了所有可能的方法使它能够工作,但似乎没有任何效果……请帮帮我。
更新: 即使我将其重命名为file.xls,它也无法打开。 以下是我的代码:
NSURL* nsUrl = [NSURL URLWithString:url];
_urlReq = [NSURL URLWithString:url];
[self performSelector:@selector(urlRequestForFile) withObject:nil afterDelay:0];
_webView.delegate = self;
NSURLRequest* request = [NSURLRequest requestWithURL: nsUrl];
[_webView loadRequest: request];
-(void)urlRequestForFile{
self.connection = nil;
NSURLRequest *requestForFile = [NSURLRequest requestWithURL:_urlReq cachePolicy:NSURLRequestReloadIgnoringCacheData timeoutInterval:300];
_connection = [[NSURLConnection alloc]initWithRequest:requestForFile delegate:self startImmediately:YES];
_ongingServiceFlag = YES;
}
需要帮助在我的IOS应用程序中显示xlsx文件,无论是使用UIWebView还是其他方法,在不使用第三方应用程序的情况下显示xlsx文件?
更新(解决方案): 我很惊讶地看到甚至连苹果网站上也没有提到UIWebView支持XLSX,但实际上UIWebView完全支持XLSX格式。你需要确保指定正确的"textEncodingName"值。如果您的文件以base64二进制编码存储,请将其指定为textEncodingName:@“base64”,否则您必须指定为“utf-8”。
以下行适用于我:
[webView loadData:urlData MIMEType:@"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" textEncodingName:@"base64" baseURL:nil];
QLPreviewController
。 - rmaddy