UIWebView不会打开ms word(doc)和ms excel(xls)文件

时间:2011-05-09 19:33:23

标签: objective-c excel file-io uiwebview ms-word

我正在使用XCode 3.2.5 iOS SDK 4.2开发iPad应用程序。此应用程序需要打开PDF,DOC和XLS文件并将其预览给用户。

我正在尝试使用UIWebView控件打开它们。仅正确打开PDF文件。当打开DOC或XLS时,我得到一个黑色的空视图。 这发生在模拟器和设备中。

我做错了什么?

以下是代码:

-(void)prepareToShow:(NSString*)filePath fileType:(NSString*)fileType request:(NSURLRequest*)request{

UIWebView *webView = (UIWebView*)self.view;
self.actualFilePath = filePath;

NSLog(@"File Path %@",filePath);

NSString *mimeType = @"";
if ([fileType caseInsensitiveCompare:@"PDF"]==NSOrderedSame){
    mimeType = @"application/pdf";
} else  if ([fileType caseInsensitiveCompare:@"DOC"]==NSOrderedSame){
    mimeType = @"application/msword";
} else  if ([fileType caseInsensitiveCompare:@"XLS"]==NSOrderedSame){
    mimeType = @"application/vnd.ms-excel";
}

[webView loadData:[NSData dataWithContentsOfFile:filePath] MIMEType:mimeType textEncodingName:@"UTF-8" baseURL:[NSURL URLWithString:@"http://www.google.com"]];

}

1 个答案:

答案 0 :(得分:3)

要加载word或excel或pdf文档,您需要physical path document file。它表示文件应为saved in document or temporary directory,或者可能位于application bundle

//now use file path to load in webview
[yourWebView loadRequest:[NSURLRequest requestWithURL:[NSURL  fileURLWithPath:yourFilePath]]];