Hi all, hope you can help me out, the line wordLists = serializer.Deserialize(stream) as WordLists;
, is getting the error:
InvalidOperationException: was not expected
System.Xml.Serialization.XmlSerializationReaderInterpreter.ReadRoot (System.Xml.Serialization.XmlTypeMapping rootMap)
System.Xml.Serialization.XmlSerializationReaderInterpreter.ReadRoot ()
System.Xml.Serialization.XmlSerializer.Deserialize (System.Xml.Serialization.XmlSerializationReader reader)
Rethrow as InvalidOperationException: There is an error in XML document.
System.Xml.Serialization.XmlSerializer.Deserialize (System.Xml.Serialization.XmlSerializationReader reader)
System.Xml.Serialization.XmlSerializer.Deserialize (System.Xml.XmlReader xmlReader)
System.Xml.Serialization.XmlSerializer.Deserialize (System.IO.Stream stream)
CreateWordList.AddWordListToList () (at Assets/scripts/XML/CreateWordList.cs:59)
CreateWordList.AddWordList () (at Assets/scripts/XML/CreateWordList.cs:38)
UnityEngine.Events.InvokableCall.Invoke () (at C:/buildslave/unity/build/Runtime/Export/UnityEvent.cs:165)
UnityEngine.Events.UnityEvent.Invoke () (at C:/buildslave/unity/build/Runtime/Export/UnityEvent_0.cs:58)
UnityEngine.UI.Button.Press () (at C:/buildslave/unity/build/Extensions/guisystem/UnityEngine.UI/UI/Core/Button.cs:36)
UnityEngine.UI.Button.OnPointerClick (UnityEngine.EventSystems.PointerEventData eventData) (at C:/buildslave/unity/build/Extensions/guisystem/UnityEngine.UI/UI/Core/Button.cs:45)
UnityEngine.EventSystems.ExecuteEvents.Execute (IPointerClickHandler handler, >UnityEngine.EventSystems.BaseEventData eventData) (at C:/buildslave/unity/build/Extensions/guisystem/UnityEngine.UI/EventSystem/ExecuteEvents.cs:50)
UnityEngine.EventSystems.ExecuteEvents.Execute[IPointerClickHandler] (UnityEngine.GameObject target, UnityEngine.EventSystems.BaseEventData eventData, >UnityEngine.EventSystems.EventFunction`1 functor) (at C:/buildslave/unity/build/Extensions/guisystem/UnityEngine.UI/EventSystem/ExecuteEvents.cs:261)
UnityEngine.EventSystems.EventSystem:Update()
Heres my code:
public void AddWordListToList()
{
XmlSerializer serializer = new XmlSerializer(typeof(WordLists));
string filename2 = Application.dataPath + "/StreamingAssets/WordLists/wordlists.xml";
FileStream stream = new FileStream(filename2, FileMode.Open);
wordLists = serializer.Deserialize(stream) as WordLists;
stream.Close();
//wordLists.list.Add(WordlistName);
foreach(WordListData data in wordLists.list)
{
print(WordlistName);
}
using(StreamWriter writer = new StreamWriter(filename2))
{
serializer.Serialize(writer, wordLists.list);
}
}
// ...
[System.Serializable]
public class WordListData
{
public string WordListName;
}
[System.Serializable]
public class WordLists
{
public List<WordListData> list = new List<WordListData>();
}
I hope someone can help please,
Many Thanks
Tekman