Querycelgebieden toegewezen aan XML-kaartpad met behulp van Aspose.Cells

Invoering

Heb je je ooit afgevraagd hoe je met XML-gegevens in Excel kunt werken met behulp van .NET? Met Aspose.Cells voor .NET, een krachtige bibliotheek voor spreadsheetmanipulatie, kun je eenvoudig met XML-kaarten in je Excel-bestanden werken. Stel je voor dat je een Excel-bestand hebt met gestructureerde gegevens en je moet specifieke gebieden die zijn toegewezen aan XML-paden, opvragen. Dit is waar Aspose.Cells schittert. In deze tutorial duiken we in het opvragen van celgebieden die zijn toegewezen aan XML-kaartpaden in Excel-bestanden met behulp van Aspose.Cells voor .NET. Of je nu dynamische rapporten wilt maken of gegevensextractie wilt automatiseren, deze gids biedt je stapsgewijze instructies.

Vereisten

Voordat we beginnen met coderen, heb je een paar dingen nodig:

  1. Aspose.Cells voor .NET: Zorg ervoor dat u deze bibliotheek hebt geïnstalleerd. U kunt het downloadenhier of via NuGet verkrijgen.
  2. Een XML-toegewezen Excel-bestand: voor deze tutorial hebt u een Excel-bestand (.xlsx) nodig dat een XML-toewijzing bevat.
  3. Ontwikkelomgeving: in deze handleiding wordt ervan uitgegaan dat u Visual Studio gebruikt, maar elke C#-editor zou prima moeten werken.
  4. Aspose-licentie: U kunt indien nodig een tijdelijke licentie gebruiken, die u kunt krijgenhier.

Pakketten importeren

Om te beginnen moet u ervoor zorgen dat u de benodigde naamruimten in uw codebestand importeert:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Diagnostics;
using System.Collections;

Met deze pakketten kunt u de werkmap openen, werkbladen bewerken en XML-toewijzingen in het spreadsheet opvragen.

Stap 1: Laad het Excel-bestand met een XML-kaart

Eerst moet u een Excel-bestand laden dat al XML-toewijzing bevat. Dit bestand fungeert als de gegevensbron.

// Definieer de directorypaden voor bron en uitvoer
string sourceDir = "Your Document Directory";
// Laad het Excel-bestand
Workbook wb = new Workbook(sourceDir + "sampleXmlMapQuery.xlsx");

Hier,Workbook is de klasse die het volledige Excel-bestand vertegenwoordigt, dat u laadt met behulp van het bestandspad. Vervangen"Your Document Directory" met het daadwerkelijke pad naar de map waar uw bestand zich bevindt.

Stap 2: Toegang tot de XML-kaart in de werkmap

Zodra het bestand is geladen, is de volgende stap om toegang te krijgen tot de XML-map in de werkmap. Deze map fungeert als een brug tussen uw spreadsheet en XML-gegevens.

//Toegang tot de eerste XML-kaart in de werkmap
XmlMap xmap = wb.Worksheets.XmlMaps[0];

Hier halen we de eerste XML-kaart in de werkmap op door toegang te krijgen totXmlMaps[0] van deWorksheets verzameling. U kunt meerdere XML-kaarten in een werkmap hebben, en deze tutorial richt zich op de eerste.

Stap 3: Open het werkblad om te zoeken

Nu de XML-map gereed is, wilt u het specifieke werkblad selecteren waar de toegewezen gegevens zich bevinden. Dit is doorgaans het eerste werkblad, maar het hangt af van de instellingen van uw bestand.

// Toegang tot het eerste werkblad in de werkmap
Worksheet ws = wb.Worksheets[0];

Door toegang te krijgen tot het werkblad waar XML-gemapte gegevens zich bevinden, kunt u specifieke cellen targeten. Hier gebruiken we het eerste werkblad, maar u kunt elk ander werkblad kiezen door de index te wijzigen of de naam op te geven.

Stap 4: XML-kaart opvragen met behulp van een pad

Nu komt het kerngedeelte: het bevragen van de XML-map. Hier specificeert u het XML-pad en haalt u gegevens op die zijn toegewezen aan dat pad in het werkblad.

Console.WriteLine("Query Xml Map from Path - /MiscData");
ArrayList ret = ws.XmlMapQuery("/MiscData", xmap);

DeXmlMapQuerymethode neemt twee parameters—het XML-pad en de XML-map die u eerder hebt opgehaald. In dit voorbeeld vragen we het pad op/MiscData , wat het hoogste pad is in de XML-structuur. De resultaten worden opgeslagen in eenArrayList, waardoor u er eenvoudig doorheen kunt itereren.

Stap 5: Queryresultaten weergeven

Nu de gegevens zijn opgevraagd, is de volgende stap het weergeven van de resultaten. Laten we elk item uit deArrayList naar de console voor een duidelijk overzicht van welke gegevens zijn geëxtraheerd.

// De resultaten van de query afdrukken
for (int i = 0; i < ret.Count; i++)
{
    Console.WriteLine(ret[i]);
}

Deze lus gaat door elk item in deArrayList en drukt het af op de console. U ziet de gegevens die uit het XML-kaartpad zijn gehaald/MiscData.

Stap 6: Een genest XML-pad opvragen

Om uw query te verfijnen, gaan we dieper in op een genest pad binnen de XML-structuur, zoals/MiscData/row/Color.

Console.WriteLine("Query Xml Map from Path - /MiscData/row/Color");
ret = ws.XmlMapQuery("/MiscData/row/Color", xmap);

Hier vragen we een specifieker pad binnen de XML-gegevens op. Door te beperken tot/MiscData/row/Color , richt u zich alleen op de kleurinformatie onder derow knooppunt in de XML-structuur.

Stap 7: Geneste padqueryresultaten weergeven

Ten slotte wilt u de resultaten van deze verfijnde query afdrukken om de specifieke waarden te zien die aan de query zijn toegewezen./MiscData/row/Color.

// De resultaten van de geneste padquery afdrukken
for (int i = 0; i < ret.Count; i++)
{
    Console.WriteLine(ret[i]);
}

Net als voorheen worden de queryresultaten via deze lus naar de console gestuurd, zodat u de specifieke gegevens die uit het geneste XML-pad zijn opgehaald, kunt bekijken.

Conclusie

En daar heb je het! Met Aspose.Cells voor .NET is het opvragen van celgebieden die zijn toegewezen aan XML-kaartpaden eenvoudig en zeer effectief. Deze krachtige functie is een game-changer voor ontwikkelaars die specifieke XML-gegevens uit spreadsheets moeten halen. Je hebt nu de basis om complexere XML-query’s te implementeren en zelfs meerdere XML-toewijzingen te combineren binnen je Excel-workflows. Ben je klaar om dit verder te brengen? Bekijk de Aspose.Cells-documentatie voor extra XML-kaartfunctionaliteiten om je applicaties te verbeteren!

Veelgestelde vragen

Kan ik meerdere XML-bestanden in één Excel-werkmap toewijzen?

Ja, met Aspose.Cells kunt u meerdere XML-kaarten in een werkmap beheren, waardoor complexe gegevensinteracties mogelijk worden.

Wat gebeurt er als het XML-pad niet in de kaart bestaat?

Als het pad ongeldig is of niet bestaat,XmlMapQuery methode retourneert een legeArrayList.

Heb ik een licentie nodig om Aspose.Cells voor .NET te gebruiken?

Ja, voor volledige functionaliteit is een licentie vereist. U kunt eengratis proefperiodeof krijg eentijdelijke licentie.

Kan ik de opgevraagde gegevens opslaan in een nieuw Excel-bestand?

Absoluut! U kunt opgevraagde gegevens extraheren en naar een ander Excel-bestand of een ander formaat schrijven dat door Aspose.Cells wordt ondersteund.

Is het mogelijk om XML-kaarten in andere formaten dan Excel (.xlsx) te raadplegen?

XML-toewijzing wordt ondersteund in .xlsx-bestanden. Voor andere formaten kan de functionaliteit beperkt of niet-ondersteund zijn.