2012-01-18 7 views
1

私のアプリケーションには8つのTextFieldが含まれています。送信ボタンをクリックすると、TextFieldのすべての値をXMLファイルに保存し(必要に応じてXMLファイルを生成する)必要があります。これどうやってするの?データをXMLファイルに保存するには

+0

代わりにJSONを使用します。もちろん、XMLを使用する必要がない限り、 – basvk

答えて

0

これを行う方法はたくさんあります。コードの中に文字列を生成し、その値を挿入するのが速くて汚い方法です。

NSString *myXML = [NSString stringWithFormat:@"<myxml><value1>%@</value1><value2>%@</value2></myxml>", textfield1, textfield2]; 

次に、ファイルを開いてmyXMLを書き込みます。

あまりエレガントではありませんが、正確に何をしたいかによって異なります。

+0

このレスポンスはXMLエスケープで強化する必要があります。そうしないと、出力XMLが無効になる可能性があります。 – ThomasRS

+0

これは単なる非常に速く汚れた例であり、テストなしで本番コードで書かれて使用されることを意図していませんでした! –

0

XMLファイルを特定の形式にする必要がありますか?そうでない場合は最も簡単な方法は、配列にあなたの文字列を入れてのplist(xmlファイルの種類)として保存し、その後のplistのいいところがあるということ

NSArray *array = [NSArray arrayWithObjects:label1.text, label2.text, label3.text, etc, nil]; 
[array writeToFile:fileName atomically:YES]; 

を使用したplistとして配列を保存することですあなたは簡単に呼び出すことで、再び文字列を読み込むことができます。

NSArray *array = [NSArray arrayWithContentsOfFile:filename]; 

あなたはplistのが生成するものとは異なる形式でXMLが必要な場合は、最も簡単な方法は、単に文字列の連結、例えばを使用してXMLを自分で構築することはおそらくあり

NSString *xml = [NSSString stringWithFormat:@"<root><label>%@</label><label>%@</label><label>%@</label>etc</root>", label1.text, label2.text, label3.text, etc]; 
+0

私はこのxmlをサーバーに投稿するかもしれないので、xmlを好むでしょう – Cyril

1

もう1つのXMLライターはXSWIです(恥知らずのプラグ - 私はそのコードを書いています)。

関連する問題