【发布时间】:2016-09-19 14:53:38
【问题描述】:
我正在尝试设置我的第一个列表到/从外部 XML 文件的导出/导入。开始时我有以下代码:
private void Form1_Load(object sender, EventArgs e)
{
string path = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData);
if (!Directory.Exists("C:\\Temp"))
Directory.CreateDirectory("C:\\Temp");
if (!File.Exists("C:\\Temp\\mygames.xml"))
File.Create("C:\\Temp\\mygames.xml").Close();
//Call method to read data from XML to List<>
videogame = ReadFromXmlFile<List<vglist>>("C:\\Temp\\mygames.xml");
displayList();
} // END of method Form1_Load
使用ReadFromXmlFile方法如下:
public static T ReadFromXmlFile<T>(string filePath) where T : new()
{
TextReader reader = null;
try
{
var serializer = new XmlSerializer(typeof(T));
reader = new StreamReader(filePath);
return (T)serializer.Deserialize(reader);
} // end try
finally
{
if (reader != null)
reader.Close();
} // end finally
} // END ReadFromXmlFile<T> method
但我在执行程序时不断收到以下错误:
抛出异常:System.Xml.dll 中的“System.InvalidOperationException”
System.Xml.dll 中出现“System.InvalidOperationException”类型的未处理异常
附加信息:XML 文档中存在错误 (0, 0)。
我的班级设置如下:
public class vglist
{
[XmlElement("gameName")] // XML tag
public string GameName // game field
{
get;
set;
}
etc...
有什么想法吗?我到处搜索有类似问题的地方,但没有解决方案有帮助。
【问题讨论】:
-
请发布 XML(或附近示例),因为这也可能与发现任何解析问题有关。
-
我试图填充的 XML 文件是在启动时创建的,但在我遇到错误时它永远不会填充。