0

次のコード行を使用して html ページを保存しました。

NSURL *yoyoyo = [[NSURL alloc] initWithString:@"www.google.com"];
NSData *data = [[NSData alloc] initWithContentsOfURL:yoyoyo]; 
NSString *html = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding]; 
NSString *documentsDirectory = @"/Users/xxxx/Library/Application Support/iPhone Simulator/5.1/Applications/";
NSLog(@"%@", documentsDirectory);
NSString *htmlFilePath = [documentsDirectory stringByAppendingPathComponent:@"file.html"];
[html writeToFile:htmlFilePath atomically:YES encoding:NSUTF8StringEncoding error:nil];

として名前が付けられたファイルは、「file.html」フォルダーとして、上記のパス、つまり documentsDirectory に保存されます。このファイルをアプリケーションの safari または webView で開く方法はありますか?? ありがとうございます。

4

4 に答える 4

1

この形式のURLを試してくださいhttp://www.google.com

于 2012-06-18T11:48:31.287 に答える
1

Web ビューにロードするには、次の手順を実行します。

NSString *htmlFilePath = [documentsDirectory stringByAppendingPathComponent:@"file.html"];
NSString *htmlContents = [NSString stringWithContentsOfFile:htmlFilePath
                                                   encoding:NSUTF8StringEncoding 
                                                      error:NULL];
[webView loadHTMLString:htmlContents baseURL:nil];

取得にも問題がありますdocumentDir

それ以外の

NSString *documentsDirectory = @"/Users/xxxx/Library/Application Support/iPhone Simulator/5.1/Applications/";

使用する

NSString *documentsDirectory = [NSHomeDirectory() stringByAppendingPathComponent:@"Documents"];

ファイルを再度保存し、上記のコードを使用してロードを試みます

于 2012-06-18T11:15:42.837 に答える
0

このコードを試してみてください。これは役に立つかもしれません。

NSString *htmlFile;

htmlFile = [[NSBundle mainBundle] pathForResource:@"abc" ofType:@"html" inDirectory:nil];


NSString* htmlString = [NSString stringWithContentsOfFile:htmlFile  encoding:NSUTF8StringEncoding error:nil];

[webView loadHTMLString:htmlString baseURL:nil];

abc.html は、アプリケーション内の html ファイルです。

于 2014-09-18T09:43:37.363 に答える
0

次のように簡単にできます。

[[UIApplication sharedApplication] openURL: [NSURL URLWithString: htmlFilePath];

保存した HTML ファイルを Safari で開きます。

アプリに独自の webview がある場合は、URLRequest を作成して、それを webview の " loadRequest:" メソッドに渡すことができます。

于 2012-06-18T11:14:34.220 に答える