Fråga cellområden kopplade till XML kartvärdering med hjälp av Worksheet.XmlMapQuery metoden
Möjliga användningsscenario
Du kan fråga cellområden som är karterade till XML-kartans sökväg med Aspose.Cells använder metoden Worksheet.XmlMapQuery(). Om sökvägen finns, kommer den att returnera listan över cellområden som är relaterade till den sökvägen inne i XML-kartan. Den första parametern av metoden Worksheet.XmlMapQuery() specifierar XML-elementets sökväg och den andra parametern specifierar en XML-karta du vill fråga.
Fråga cellområden kopplade till XML-kartvärdering med hjälp av Worksheet.XmlMapQuery-metoden
Följande skärmbild visar Microsoft Excel som visar XML-karta inne i prov Excel-filen som används i koden. Koden frågar XML-kartan två gånger och skriver ut listan över cellområden som returnerats av metoden Worksheet.XmlMapQuery() på konsolen som visas nedan.
Exempelkod
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
//Load sample Excel file having Xml Map | |
Workbook wb = new Workbook("sampleXmlMapQuery.xlsx"); | |
//Access first XML Map | |
XmlMap xmap = wb.Worksheets.XmlMaps[0]; | |
//Access first worksheet | |
Worksheet ws = wb.Worksheets[0]; | |
//Query Xml Map from Path - /MiscData | |
Console.WriteLine("Query Xml Map from Path - /MiscData"); | |
ArrayList ret = ws.XmlMapQuery("/MiscData", xmap); | |
//Print returned ArrayList values | |
for (int i = 0; i < ret.Count; i++) | |
{ | |
Console.WriteLine(ret[i]); | |
} | |
Console.WriteLine(""); | |
//Query Xml Map from Path - /MiscData/row/Color | |
Console.WriteLine("Query Xml Map from Path - /MiscData/row/Color"); | |
ret = ws.XmlMapQuery("/MiscData/row/Color", xmap); | |
//Print returned ArrayList values | |
for (int i = 0; i < ret.Count; i++) | |
{ | |
Console.WriteLine(ret[i]); | |
} |
Konsoloutput
Query Xml Map from Path - /MiscData
Aspose.Cells.CellArea(A1:A8)[0,0,7,0]
Aspose.Cells.CellArea(B1:B8)[0,1,7,1]
Aspose.Cells.CellArea(C1:C8)[0,2,7,2]
Aspose.Cells.CellArea(D1:D8)[0,3,7,3]
Aspose.Cells.CellArea(E1:E8)[0,4,7,4]
Query Xml Map from Path - /MiscData/row/Color
Aspose.Cells.CellArea(D1:D8)[0,3,7,3]
Få XML-sökväg från listobjekt/tabell
XML-data kan importeras till kalkylblad. Ibland krävs XML-sökvägen från ListObjects i kalkylbladet. Denna funktion finns tillgänglig i Excel genom att använda ett uttryck som Sheet1.ListObjects(1).XmlMap.DataBinding. Samma funktion finns tillgänglig i Aspose.Cells genom att anropa ListObject.XmlMap.DataBinding.Url. Följande exempel demonstrerar denna funktion. Mallfilen och andra källfiler kan laddas ner från följande länkar:
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
// Load XLSX file containing data from XML file | |
Workbook workbook = new Workbook("XML Data.xlsx"); | |
// Access the first worksheet | |
Worksheet ws = workbook.Worksheets[0]; | |
// Access ListObject from the first sheet | |
Aspose.Cells.Tables.ListObject listObject = ws.ListObjects[0]; | |
// Get the url of the list object's xml map data binding | |
string url = listObject.XmlMap.DataBinding.Url; | |
// Display XML file name | |
Console.WriteLine(url); |