Çalışsheet.XmlMapQuery yöntemini kullanarak XML Haritası Yoluyla Eşlenen Hücre Alanlarını Sorgulama

Olası Kullanım Senaryoları

Aspose.Cells kullanarak XML haritası yoluna eşlenen hücre alanlarını sorgulayabilirsiniz. Path varsa, XML haritası içinde o yola ilişkin hücre alanları listesini döndürecektir. Worksheet.xmlMapQuery() yönteminin ilk parametresi XML öğe yolu, ikinci parametresi sorgulamak istediğiniz XML haritasını belirtir.

Worksheet.XmlMapQuery yöntemini kullanarak XML Haritası Yoluna Eşlenmiş Hücre Alanlarını Sorgula

Aşağıdaki ekran görüntüsü, kodda kullanılan örnek Excel dosyasını göstermekte ve kod, XML haritasını iki kez sorgular ve Worksheet.xmlMapQuery() yöntemi tarafından döndürülen hücre alanları listesini konsolda aşağıda gösterildiği gibi yazdırır.

todo:image_alt_text

Örnek Kod

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

Konsol Çıktısı

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]

Liste Objesi / Tablo’dan XML Yolunu Al

XML verileri çalışsayfalarına içe aktarılabilir. Bazen çalışsayfanın ListeObjelerinden XML yolu gereklidir. Bu özellik, Excel’de Sheet1.ListObjects(1).XmlMap.DataBinding gibi bir ifade kullanılarak elde edilir. Aynı özellik, Aspose.Cells’de ListObject.getXmlMap().getDataBinding().getUrl() çağrılarak kullanılabilir. Aşağıdaki örnek bu özelliği göstermektedir. Şablon dosyası ve diğer kaynak dosyalar aşağıdaki bağlantılardan indirilebilir:

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