LoadXml挂C#

时间:2017-02-01 17:44:48

标签: c# .net xml

我正在尝试使用JSON.NET将XML转换为JSON。我现在的问题似乎是代码在LoadXml期间挂起。

                XmlDocument xDoc = new XmlDocument();
                Console.WriteLine("1");
                xDoc.LoadXml("discordBotFiles/xmldata.xml");

                Console.WriteLine("2");
                String jsonConversion = JsonConvert.SerializeXmlNode(xDoc);

                Console.WriteLine("3");
                JObject textToJson = JObject.Parse(jsonConversion);

XML并不重要,无论XML中的内容如何,​​它总是挂起在LoadXml调用上。打印到控制台是为了确定它挂在哪里。

编辑:我已将LoadXml更改为Load但它仍然没有抛出异常并仍然挂起。

Edit2:叹了口气,我发现了异常。我没有在控制台中显示,但它出现在Visual Basic中的输出中。我没想过去看那里。 抛出异常:' System.IO.FileNotFoundException'在System.Xml.dll

1 个答案:

答案 0 :(得分:0)

XmlDocument.LoadXml将xml内容作为参数,而不是文件名。如果要阅读文件,请使用XmlDocument.Load

而且我很确定它没有挂起 - 它会抛出XmlException,因为被解析的数据(discordBotFiles/xmldata.xml)无效Xml。如果您的应用程序挂起,则会在您的异常处理中进行,而不是XmlDocument