2012-01-18 72 views
1

我的應用程序包含8個TextField。當我單擊提交按鈕時,我想將TextFields中的所有值保存到XML文件中(並在需要時生成XML文件)。我怎樣才能做到這一點?如何將數據保存到XML文件中

+0

我想用JSON代替。除非有絕對必須使用XML – basvk 2012-06-29 11:32:43

回答

0

有很多方法可以做到這一點。一種快速和骯髒的方法是在您的代碼中生成一個字符串,並插入值

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

然後打開一個文件並寫入myXML。

不是很優雅,但它取決於你想要什麼。

+0

這個響應需要通過xml轉義來增強,否則輸出XML可能會失效。 – ThomasRS 2012-06-29 11:27:30

+0

這只是一個非常快速和骯髒的例子,並不意味着不經過測試就被編寫和使用在生產代碼中! – 2012-06-29 11:36:27

0

您是否需要XML文件以特定格式?如果不是最簡單的方法是將其保存爲一個plist中(一個類型的XML文件),把你的字符串到一個數組,然後使用

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

的好處有關的plist是保存陣列是plist你可以很容易地通過調用再次加載字符串:

NSArray *array = [NSArray arrayWithContentsOfFile:filename]; 

如果你需要你的XML從plist中會產生什麼不同的格式,最簡單的方法可能只是使用字符串連接,例如,建立自己的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 2012-01-18 13:56:56

1

將完成工作的另一個XML編寫器是XSWI(無恥插件 - 我寫了該代碼)。