0

ユーザーが無制限の量のHTMLドキュメントを作成し、アプリのドキュメントフォルダーに保存できるiOSアプリを作成しようとしています。これは一種のコンボ質問のようなものですが、ドキュメント辞書にあるファイルを表示するにはどうすればよいですか。

だから私の2つの質問は:

ドキュメント辞書にあるHTMLファイルを表示する方法

ユーザーが無制限のフォルダとHTMLファイルを作成できるようにする方法

二重の質問でごめんなさい...

4

2 に答える 2

4

ドキュメント ディレクトリへの HTML およびその他のテキスト ファイルの保存

まず、ドキュメント ディレクトリへのパスを知る必要があります。

NSArray* paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsPath = [paths objectAtIndex:0];

デバイス ストレージの制限まで、そこにドキュメントとディレクトリを作成できます。ただし、ルート内のファイルのみが iTunes ドキュメント共有に表示されることに注意してください。

したがって、 stringhtmlContentと stringがあるhtmlFilename場合は、保存できます。使用しているエンコーディングに注意してください。HTML ヘッダーとメタ タグ (存在する場合) のエンコーディングは、ここで使用されているエンコーディングと一致する必要があります。

NSString *htmlPath = [documentsPath stringByAppendingPathComponent:htmlFilename];
[htmlContent writeToFile:htmlPath atomically:NO encoding:NSUTF8StringEncoding error:nil];

アプリ内で HTML ファイルを表示する

で HTML を表示できますUIWebView。と呼ばれるものがあると仮定すると、その中に任意のオブジェクトをwebView表示できます。NSURL

NSURL *stackOverflowAddress = [NSURL URLWithString:@"http://www.stackoverflow.com"];
[[self webView] loadRequest:[NSURLRequest requestWithURL:stackOverflowAddress]];

これには、作成したばかりのファイルを含めることができます。

NSURL *htmlURL = [NSURL fileURLWithPath:htmlPath];
[[self webView] loadRequest:[NSURLRequest requestWithURL:htmlURL]];

または、文字列を直接入れることもできます:

[[self webView] loadHTMLString:htmlContent baseURL:nil];

多くの機能にを使用している場合は、時間をかけてUIWebViewDelegate プロトコル リファレンスUIWebViewを読んでください。

Safari で HTML を開く

他の URL を開くようにアプリケーションに指示することもできます。通常、これにより Safari が開きます。ただし、Safari はアプリのドキュメント ディレクトリにアクセスできないため、ドキュメントがローカルに保存されている間はドキュメントを表示できません。

[[UIApplication sharedApplication] openURL:stackoverflowAddress];
于 2012-04-13T03:18:41.753 に答える
0

I'm trying to make an iOS app that allows the user to create an unlimited amount of HTML documents and save them into the documents folder.

HTML files are simply text (as most code-related files are), so of you wish to get it's contents as a string, use NSString's +stringWithContentsOfFile.

How to allow the user to created unlimited folders and html files

As for writing, so long as you write your string with the path extension .html, it will be a perfectly valid HTML file.

EDIT, the path to the documents directory can be found with

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 
NSString *documentsDirectory = [paths objectAtIndex:0]; // Get documents directory

How to display HTML file that are in the document dictionary

HTML files may be displayed in UIWebViews see this related question for an example.

于 2012-04-13T02:50:32.330 に答える