0

我正在尝试从 excel 表中检索所有值并存储在 XML 中。如何以 .XML 格式存储变量值?这是我的代码。我尝试使用 writeXMl,但格式不正确。我想以 .XML 格式保存 xlContent 变量中的任何内容。

var columnNames = new List<string>();
foreach (DataColumn column in dt.Columns)
{
    columnNames.Add(column.ColumnName);
}
var xlContent = new XElement("DocumentElement", from row in dt.AsEnumerable()
                        select new XElement("Assets", from columnName in columnNames
                        select new XElement(columnName.Replace(" ",""), row[columnName]))).ToString();


dt.WriteXml("C:\\Development\\MyAppln\\ExcelToXML\\Products.xml");
4

1 回答 1

0

使用XElement.Save()方法:

xlContent.Save("C:\\Development\\MyAppln\\ExcelToXML\\Products.xml"); 

将 xlContent 声明为var,然后将 aToString()最后生xlContent成为string. 如果您删除ToString(), xlContent 将正确声明为XElement,您将能够获得一个Save()方法。

调用时会自动添加 xml 声明Save()。如需进一步参考检查:XElement.Save 方法

现在,如果您不想要默认声明,您可以将您的添加XElement到 anXDocument中,然后定义声明的属性:

    XDocument xDoc = new XDocument
        (
            new XDeclaration("1.0","Windows-1252","yes"),
            xlContent
        );
    xDoc.Save("C:\\Development\\MyAppln\\ExcelToXML\\Products.xml");
于 2013-10-09T05:02:55.907 回答