WorkbookBase.XmlImport(String, XmlMap, Object, Object) 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
将 XML 数据文件导入当前工作簿。
public Microsoft.Office.Interop.Excel.XlXmlImportResult XmlImport (string url, out Microsoft.Office.Interop.Excel.XmlMap importMap, object overwrite, object destination);
member this.XmlImport : string * XmlMap * obj * obj -> Microsoft.Office.Interop.Excel.XlXmlImportResult
Public Function XmlImport (url As String, ByRef importMap As XmlMap, Optional overwrite As Object, Optional destination As Object) As XlXmlImportResult
参数
- url
- String
到 XML 数据文件的统一资源定位符 (URL) 或统一命名约定 (UNC) 路径。
- importMap
- XmlMap
导入文件时应用的架构映射。
- overwrite
- Object
如果未为 Destination
参数指定值,则此参数指定是否覆盖已映射到 参数中指定的 ImportMap
架构映射的数据。 设置为 true
可覆盖数据,设置为 false
可向现有数据追加新数据。 默认值为 true
。 如果为 Destination
参数指定了值,则此参数指定是否覆盖现有数据。 设置为 true
可覆盖现有数据,设置为 false
可在要执行数据覆盖时取消导入。 默认值为 true
。
返回
XlXmlImportResult 值之一。
示例
下面的代码示例基于从 DataSet生成的架构创建 XmlMap ,将 写入 DataSet XML 文件,然后使用 XmlImport 方法将 XML 文件中的数据写入工作表 Sheet1
中的区域。
此示例适用于文档级自定义项。
private void WorkbookXmlImport()
{
// Create a new DataTable.
DataSet ds = new DataSet();
DataTable dt = ds.Tables.Add("Customers");
dt.Columns.Add(new DataColumn("LastName"));
dt.Columns.Add(new DataColumn("FirstName"));
// Add a new row to the DataTable.
DataRow dr = dt.NewRow();
dr["LastName"] = "Chan";
dr["FirstName"] = "Gareth";
dt.Rows.Add(dr);
// Add a new XML map and write the XML to a file.
Excel.XmlMap xmlMap1 = this.XmlMaps.Add(ds.GetXmlSchema(),
"NewDataSet");
ds.WriteXml(@"C:\Customers.xml");
// Import the XML from the file.
Excel.Range range1 = Globals.Sheet1.Range["A1"];
this.XmlImport(@"C:\Customers.xml", out xmlMap1, true, range1);
}
Private Sub WorkbookXmlImport()
' Create a new DataTable.
Dim ds As New DataSet()
Dim dt As DataTable = ds.Tables.Add("Customers")
dt.Columns.Add(New DataColumn("LastName"))
dt.Columns.Add(New DataColumn("FirstName"))
' Add a new row to the DataTable.
Dim dr As DataRow = dt.NewRow()
dr("LastName") = "Chan"
dr("FirstName") = "Gareth"
dt.Rows.Add(dr)
' Add a new XML map and write the XML to a file.
Dim xmlMap1 As Excel.XmlMap = Me.XmlMaps.Add(ds.GetXmlSchema(), _
"NewDataSet")
ds.WriteXml("C:\Customers.xml")
' Import the XML from the file.
Dim range1 As Excel.Range = Globals.Sheet1.Range("A1")
Me.XmlImport("C:\Customers.xml", xmlMap1, True, _
range1)
End Sub
注解
如果要将数据导入现有映射, Destination
请不要为 参数指定值。
以下条件将导致此方法生成运行时错误:
指定的 XML 数据包含语法错误。
导入过程被取消,因为指定的数据不能容纳在工作表中。
XmlImportXml使用 方法导入以前已加载到内存中的 XML 数据。
可选参数
有关可选参数的信息,请参阅 Office 解决方案中的可选参数。