Abfrage von Zellbereichen, die mit dem XML Map Pfad verbunden sind, mithilfe der Worksheet.XmlMapQuery Methode
Mögliche Verwendungsszenarien
Sie können mit Aspose.Cells Zellbereiche abfragen, die dem XML-Pfadbereich zugeordnet sind, und die Methode Worksheet.xmlMapQuery() verwenden. Wenn der Pfad vorhanden ist, gibt sie die Liste der mit diesem Pfad verbundenen Zellbereiche innerhalb der XML-Map zurück. Der erste Parameter der Methode Worksheet.xmlMapQuery() gibt den XML-Elementpfad an und der zweite Parameter gibt an, welche XML-Map Sie abfragen möchten.
Abfrage von Zellbereichen, die mit dem XML-Map-Pfad verbunden sind, mithilfe der Worksheet.XmlMapQuery-Methode
Der folgende Screenshot zeigt Microsoft Excel, das die XML-Map innerhalb der Beispiel-Excel-Datei anzeigt, die im Code verwendet wird. Der Code ruft die XML-Map zweimal ab und druckt die Liste der durch die Methode Worksheet.xmlMapQuery() zurückgegebenen Zellbereiche in der Konsole ab, wie unten gezeigt.
Beispielcode
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
//Load sample Excel file having Xml Map | |
Workbook wb = new Workbook("sampleXmlMapQuery.xlsx"); | |
//Access first XML Map | |
XmlMap xmap = wb.getWorksheets().getXmlMaps().get(0); | |
//Access first worksheet | |
Worksheet ws = wb.getWorksheets().get(0); | |
//Query Xml Map from Path - /MiscData | |
System.out.println("Query Xml Map from Path - /MiscData"); | |
ArrayList ret = ws.xmlMapQuery("/MiscData", xmap); | |
//Print returned ArrayList values | |
for (int i = 0; i < ret.size(); i++) | |
{ | |
System.out.println(ret.get(i)); | |
} | |
System.out.println(""); | |
//Query Xml Map from Path - /MiscData/row/Color | |
System.out.println("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.size(); i++) | |
{ | |
System.out.println(ret.get(i)); | |
} |
Konsolenausgabe
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]
XML-Pfad aus Objektliste/Tabelle erhalten
XML-Daten können in Arbeitsblätter importiert werden. Manchmal ist der XML-Pfad aus den ListObjects des Arbeitsblatts erforderlich. Diese Funktion ist in Excel verfügbar, indem ein Ausdruck wie Sheet1.ListObjects(1).XmlMap.DataBinding verwendet wird. Die gleiche Funktion ist in Aspose.Cells verfügbar, indem ListObject.getXmlMap().getDataBinding().getUrl() aufgerufen wird. Das folgende Beispiel demonstriert diese Funktion. Die Vorlagendatei und andere Quelldateien können von den folgenden Links heruntergeladen werden:
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
// Load XLSX file containing data from XML file | |
Workbook workbook = new Workbook("XML Data.xlsx"); | |
// Access the first worksheet | |
Worksheet ws = workbook.getWorksheets().get(0); | |
// Access ListObject from the first sheet | |
ListObject listObject = ws.getListObjects().get(0); | |
// Get the url of the list object's xml map data binding | |
String url = listObject.getXmlMap().getDataBinding().getUrl(); | |
// Display XML file name | |
System.out.println(url); |