- Home /
Save and load arrays into an XML file
Hi,
I'm trying to save and load my IOS game data. I have multiples arrays of strings, int, bools or floats. I would like to save that into an XML file, how can I do to export and import theses arrays easily? Is there a way of saving each arrays as a long string composed by the array components separated by | or ;.
So basicaly, to save I would build up a string from an array then exporting it to the xml. And to load, I would import the string the separate and fill out my array.
I've found the playerprefs (C# part) on the Unify I'm thinking to use that as a starting point.
#region Int Array
/// <summary>
/// Stores a Int Array or Multiple Parameters into a Key
/// </summary>
public static bool SetIntArray(string key, params int[] intArray)
{
if (intArray.Length == 0) return false;
System.Text.StringBuilder sb = new System.Text.StringBuilder();
for (int i = 0; i < intArray.Length - 1; i++)
sb.Append(intArray[i]).Append("|");
sb.Append(intArray[intArray.Length - 1]);
try { PlayerPrefs.SetString(key, sb.ToString()); }
catch (Exception e) { return false; }
return true;
}
/// <summary>
/// Returns a Int Array from a Key
/// </summary>
public static int[] GetIntArray(string key)
{
if (PlayerPrefs.HasKey(key))
{
string[] stringArray = PlayerPrefs.GetString(key).Split("|"[0]);
int[] intArray = new int[stringArray.Length];
for (int i = 0; i < stringArray.Length; i++)
intArray[i] = Convert.ToInt32(stringArray[i]);
return intArray;
}
return new int[0];
}
Any ideas, advices?
Answer by BooBi · Jan 05, 2012 at 03:29 PM
Problem Solved:
I used theses lines: System.Text.StringBuilder sb = new System.Text.StringBuilder(); for (int i = 0; i < intArray.Length - 1; i++) sb.Append(intArray[i]).Append("|"); sb.Append(intArray[intArray.Length - 1]);
and I've replaced the intArray by my actual array and exported the sb to the Xml file with the xml load and save from the unify.
Your answer
![](https://koobas.hobune.stream/wayback/20220613062707im_/https://answers.unity.com/themes/thub/images/avi.jpg)
Follow this Question
Related Questions
Saving/Loading Vertices Efficiently 2 Answers
save string from array to player prefs 1 Answer
Save and Load XML File 0 Answers
What is best way to save several arrays into a file? 0 Answers
SaveLoad Profile c# to xml 4 Answers