c# - XML 文件而不是 XML 字符串

标签 c# xml

我希望我的程序输入 XML 文件而不是字符串,这可能吗?

现在我有这样的:

string input =
            "<Root>" +
                    "<Order>" +
                      "<CustomerID>GREAL</CustomerID>" +
                      "<EmployeeID>1</EmployeeID>" +
                      "<OrderDate>1997-07-31T00:00:00</OrderDate>" +
                      "<RequiredDate>1997-08-28T00:00:00</RequiredDate>" +
                      "<ShipInfo ShippedDate=\"1997-08-05T00:00:00\">" +
                        "<ShipVia>2</ShipVia>" +
                        "<Freight>116.53</Freight>" +
                        "<ShipName>Great Lakes Food Market</ShipName>" +
                        "<ShipAddress>2732 Baker Blvd.</ShipAddress>" +
                        "<ShipCity>Eugene</ShipCity>" +
                        "<ShipRegion>OR</ShipRegion>" +
                        "<ShipPostalCode>97403</ShipPostalCode>" +
                        "<ShipCountry>USA</ShipCountry>" +
                      "</ShipInfo>" +
                    "</Order>" +
                    "<Order>" +
                      "<CustomerID>GREAL</CustomerID>" +
                      "<EmployeeID>3</EmployeeID>" +
                      "<OrderDate>1997-09-25T00:00:00</OrderDate>" +
                      "<RequiredDate>1997-10-23T00:00:00</RequiredDate>" +
                      "<ShipInfo ShippedDate=\"1997-09-30T00:00:00\">" +
                        "<ShipVia>3</ShipVia>" +
                        "<Freight>76.13</Freight>" +
                        "<ShipName>Great Lakes Food Market</ShipName>" +
                        "<ShipAddress>2732 Baker Blvd.</ShipAddress>" +
                        "<ShipCity>Eugene</ShipCity>" +
                        "<ShipRegion>OR</ShipRegion>" +
                        "<ShipPostalCode>97403</ShipPostalCode>" +
                        "<ShipCountry>USA</ShipCountry>" +
                      "</ShipInfo>" +
                    "</Order>" +
                    "<Order>" +
                      "<CustomerID>GREAL</CustomerID>" +
                      "<EmployeeID>4</EmployeeID>" +
                      "<OrderDate>1998-01-06T00:00:00</OrderDate>" +
                      "<RequiredDate>1998-02-03T00:00:00</RequiredDate>" +
                      "<ShipInfo ShippedDate=\"1998-02-04T00:00:00\">" +
                        "<ShipVia>2</ShipVia>" +
                        "<Freight>719.78</Freight>" +
                        "<ShipName>Great Lakes Food Market</ShipName>" +
                        "<ShipAddress>2732 Baker Blvd.</ShipAddress>" +
                        "<ShipCity>Eugene</ShipCity>" +
                        "<ShipRegion>OR</ShipRegion>" +
                        "<ShipPostalCode>97403</ShipPostalCode>" +
                        "<ShipCountry>USA</ShipCountry>" +
                      "</ShipInfo>" +
                    "</Order>" +
                    "<Order>" +
                      "<CustomerID>GREAL</CustomerID>" +
                      "<EmployeeID>3</EmployeeID>" +
                      "<OrderDate>1998-04-07T00:00:00</OrderDate>" +
                      "<RequiredDate>1998-05-05T00:00:00</RequiredDate>" +
                      "<ShipInfo ShippedDate=\"1998-04-15T00:00:00\">" +
                        "<ShipVia>2</ShipVia>" +
                        "<Freight>25.19</Freight>" +
                        "<ShipName>Great Lakes Food Market</ShipName>" +
                        "<ShipAddress>2732 Baker Blvd.</ShipAddress>" +
                        "<ShipCity>Eugene</ShipCity>" +
                        "<ShipRegion>OR</ShipRegion>" +
                        "<ShipPostalCode>97403</ShipPostalCode>" +
                        "<ShipCountry>USA</ShipCountry>" +
                      "</ShipInfo>" +
                    "</Order>" +
                    "<Order>" +
                      "<CustomerID>GREAL</CustomerID>" +
                      "<EmployeeID>4</EmployeeID>" +
                      "<OrderDate>1991-04-22T00:00:00</OrderDate>" +
                      "<RequiredDate>1998-05-20T00:00:00</RequiredDate>" +
                      "<ShipInfo>" +
                        "<ShipVia>3</ShipVia>" +
                        "<Freight>18.84</Freight>" +
                        "<ShipName>Great Lakes Food Market</ShipName>" +
                        "<ShipAddress>2732 Baker Blvd.</ShipAddress>" +
                        "<ShipCity>Eugene</ShipCity>" +
                        "<ShipRegion>OR</ShipRegion>" +
                        "<ShipPostalCode>97403</ShipPostalCode>" +
                        "<ShipCountry>USA</ShipCountry>" +
                      "</ShipInfo>" +
                    "</Order>" +
                "</Orders>" +
            "</Root>";

XDocument root = XDocument.Parse(input);

但我希望 XDocument.Parse 接受 XML 文件

XDocument root = XDocument.Parse(theFile);

这可能吗?有没有解决的办法?我需要我的程序接收 XML 文件

最佳答案

您可以使用XDocument.Load它有很多重载,其中一个接受 string URI:

var root = XDocument.Load(@"C:\pathtoxml.xml");

关于c# - XML 文件而不是 XML 字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32895009/

相关文章:

java - hibernate.hbm.xml 中的无效映射异常

java - 如何使用 XSL 和 Java Transformer 类将 XML 转换为 HTML

c# - .Trim() 当字符串为空或 null 时

c# - 捆绑和缩小不使用 Asp.net 4.0 C# 应用 css 和 js

c# - 使用 doxygen 为带有 XML 注释的现有 C# 代码创建文档

XML Schema 如何声明价格和货币

c# - 为什么相同文化在不同计算机或操作系统上的日期格式不同?

c# - 在 ASP.NET/C#/IIS 站点上实现守护进程?

android - 如何在运行时在 Android 上生成 XML 资源?

c++ - DOMElement 没有名为'getFirstElementChild xercesc C++ 的成员