UIWebview(iOS)中的Docx支持?

UIWebview(iOS)中的Docx支持?,ios,iphone,objective-c,uiwebview,document,Ios,Iphone,Objective C,Uiwebview,Document,我已经检查过了,很明显,UIWebview中不支持docx 但是,我还发现有些人能够在UIWebview中打开docx文件: 另外,afaik、iOS safari浏览器是基于UIWebview构建的,我可以在浏览器中从internet打开docx文件 但是,当我从测试服务器下载docx时(我通过从模拟器导入来交叉检查下载的docx,它在我的mac上完全打开),我无法在UIWebview中查看它 我很困惑, 是否支持docx? 或者docx似乎有更多不同的格式,其中一些是受支持的 这是我的

我已经检查过了,很明显,UIWebview中不支持docx

但是,我还发现有些人能够在UIWebview中打开docx文件:

另外,afaik、iOS safari浏览器是基于UIWebview构建的,我可以在浏览器中从internet打开docx文件

但是,当我从测试服务器下载docx时(我通过从模拟器导入来交叉检查下载的docx,它在我的mac上完全打开),我无法在UIWebview中查看它

我很困惑, 是否支持docx? 或者docx似乎有更多不同的格式,其中一些是受支持的

这是我的加载代码:

NSURLRequest *request = [NSURLRequest requestWithURL:urlPath];
[webViewForDocsView loadRequest:request];

UIWebView
支持docx。刚刚尝试从bundle加载一个docx文件,它似乎工作正常(在这个名为“DOC1.docx”的示例中):

如果您试图显示驻留在某个服务器上的docx文件,只需直接将其加载到web视图:

NSURL *targetURL = [NSURL URLWithString:@"http://www.central.wa.edu.au/Current_Students/JobsCareersandLeavingCentral/Documents/Resume%20Template.docx"];
NSURLRequest *request = [NSURLRequest requestWithURL:targetURL];
[mywebView loadRequest:request];

不知道为什么,但使用URL方案加载docx不起作用(下面的代码不起作用)

相反,在内存中加载文件(使用NSData)并加载MIME类型的数据是可行的(下面的代码工作得很好!)

根据Apple文档,docx不受支持,并且已被弃用

要在应用程序中打开docx,请使用


我以前的应用程序中有docx。我的解决方案是上传到Google Drive,并在
UIWebView
中打开上传文档的公共共享链接。缺点是,有一个谷歌驱动器工具栏。这适用于几乎所有Google Drive支持的文档。同样,同样的方法也适用于Android WebView@Shivan猛禽,嗯。。明白你的意思了。但是我正在开发一个企业应用程序,似乎我需要提交一个新的web服务请求来将docx转换为doc或pdf来完成这项工作。无论如何,谢谢你们的支持。从服务器上我没有得到确切的url位置,我得到的是base64编码的数据,我用这个在应用程序沙盒文件夹中创建了docx文件。因此,该文件不在主捆绑包中,也不在特定的服务器位置。无论如何,我得到了答案。我知道这是旧的,但对于未来的读者,请检查您试图从中加载它的服务器的HTTP响应头。最有可能的区别是,如果服务器没有返回正确的MIME类型,可能就是它不工作的原因(以我的经验)。
NSURL *targetURL = [NSURL URLWithString:@"http://www.central.wa.edu.au/Current_Students/JobsCareersandLeavingCentral/Documents/Resume%20Template.docx"];
NSURLRequest *request = [NSURLRequest requestWithURL:targetURL];
[mywebView loadRequest:request];
 NSURLRequest *request = [NSURLRequest requestWithURL:urlPath];
[webViewForDocsView loadRequest:request];
NSString *path = [urlFileInView path];
NSData *data = [[NSFileManager defaultManager] contentsAtPath:path];


webViewForDocsView.delegate = self;
[webViewForDocsView loadData:data MIMEType:@"application/vnd.openxmlformats-officedocument.wordprocessingml.document" textEncodingName:@"UTF-8" baseURL:nil];
DispatchQueue.main.async {
      let docOpener = UIDocumentInteractionController.init(url: fileURL)
      docOpener.delegate = self
      docOpener.presentPreview(animated: true)
}