2011-12-09 13 views
0

UIWebViewを使用して、表示するMS Office Word文書の内容を保持するNSDataオブジェクトがあります。ディスクに保存せずにMS Officeドキュメントを含むNSDataオブジェクトを表示する方法は?

私は、次のコマンドを使用しています:

[self.webView loaddataの:データのMIMEタイプ: "アプリケーション/ mswordは、" @ textEncodingName: "UTF-8" のbaseURL @:nilを];

残念ながら、空の画面が表示されます。

データをファイルに保存して、UIWebViewのrequestWithURL:urlメソッドを使用してファイルを開こうとすると、ファイルが正常に開きます。 しかし、アプリケーションがメモリ内のデータからファイルをロードし、デバイス上のファイルにデータを保存しないようにすることは非常に重要です。

MS Officeドキュメントを含むNSDataオブジェクトをロードするには、まずデバイスにデータを保存しなくても、何を表示する必要がありますか?

+0

私の回答は役に立ちましたか? –

答えて

2

ではなく、試してみてください。

[self.webView loadData:data MIMEType:@"application/msword" textEncodingName:@"utf-8" baseURL:[NSURL URLWithString:@""]]; 

を特定の種類をロードしないのUIWebViewを引き起こすことnilについての何かがあります。正確にはわかりませんが、同様の問題がありました。これはそれらを解決しました。

+0

すばらしい、ありがとう、これがなければ私は私の問題を解決しなかったでしょう。 – wzbozon

0

上記の正しいMIMEタイプを設定することで、オフィス文書を開くもう1つの方法があります。 Excel/pptなどのmswordの場合

NSString *mimtype = @"application/vnd.openxmlformats-officedocument.wordprocessingml.document"; 
 
self.webView.delegate = self; 
 

 
[self.webView loadData:data MIMEType:mimtype textEncodingName:@"UTF-8" baseURL:nil];

これはあまりにもDOCXのために動作します。

ありがとう、

関連する問題