Запрос Cell Области, сопоставленные с путем карты XML с использованием метода Worksheet.XmlMapQuery

Возможные сценарии использования

Вы можете запросить области ячеек, сопоставленные с путем карты XML, с помощью Aspose.Cells, используяРабочий лист.xmlMapQuery() метод. Если путь существует, он вернет список областей ячеек, связанных с этим путем, внутри карты XML. Первый параметрРабочий лист.xmlMapQuery() указывает путь к элементу XML, а второй параметр указывает карту XML, которую вы хотите запросить.

Запрос Cell Области, сопоставленные с путем карты XML с использованием метода Worksheet.XmlMapQuery

На следующем снимке экрана показано, как Microsoft Excel отображает XML-карту внутриобразец файла Excelиспользуется в коде. Код дважды запрашивает карту XML и печатает список областей ячеек, возвращенныйРабочий лист.xmlMapQuery() на консоли, как показано ниже.

дело:изображение_альтернативный_текст

Образец кода

// 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));
}

Консольный вывод

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 из объекта/таблицы списка

XML-данные можно импортировать в рабочие листы. Иногда требуется путь XML из ListObjects рабочего листа. Эта функция доступна в Excel с помощью такого выражения, как Sheet1.ListObjects(1).XmlMap.DataBinding. Эта же функция доступна в Aspose.Cells по телефонуListObject.getXmlMap().getDataBinding().getUrl(). Следующий пример демонстрирует эту функцию. Файл шаблона и другие исходные файлы можно скачать по следующим ссылкам:

  1. XMLData.xlsx
  2. CountryList.xml
  3. FoodList.xml
// 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);