我的應用程序包含8個TextField。當我單擊提交按鈕時,我想將TextFields中的所有值保存到XML文件中(並在需要時生成XML文件)。我怎樣才能做到這一點?如何將數據保存到XML文件中
回答
有很多方法可以做到這一點。一種快速和骯髒的方法是在您的代碼中生成一個字符串,並插入值
NSString *myXML = [NSString stringWithFormat:@"<myxml><value1>%@</value1><value2>%@</value2></myxml>", textfield1, textfield2];
然後打開一個文件並寫入myXML。
不是很優雅,但它取決於你想要什麼。
這個響應需要通過xml轉義來增強,否則輸出XML可能會失效。 – ThomasRS 2012-06-29 11:27:30
這只是一個非常快速和骯髒的例子,並不意味着不經過測試就被編寫和使用在生產代碼中! – 2012-06-29 11:36:27
您是否需要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];
我更喜歡xml,因爲我可能會將此xml發佈到服務器 – Cyril 2012-01-18 13:56:56
您可以使用GDATAXML來讀取和寫入XML文件。 請參閱此鏈接瞭解如何完成。 http://www.raywenderlich.com/725/how-to-read-and-write-xml-documents-with-gdataxml
非常感謝。這看起來很酷。 – Cyril 2012-01-18 14:00:58
將完成工作的另一個XML編寫器是XSWI(無恥插件 - 我寫了該代碼)。
我想用JSON代替。除非有絕對必須使用XML – basvk 2012-06-29 11:32:43