Arbeta med XML-behandling

Arbeta med XML-behandling

XLSX-filer lagrar sina data i XML-delar inom ett OPC-paket. Aspose.Cells FOSS för .NET exponerar XML parsing och serialiseringslagen genom fyra mapparklasser: WorkbookXmlMapper, WorksheetXmlMapper, SharedStringTableXmlMapper,och StylesheetXmlMapper.Varje mappa implementerar båda Read och Write Dessa är interna infrastruktur APIs – de flesta applikationskoder fungerar helt genom Workbook och Worksheet och föremål.


XML Mapper klasser

Varje XML-mapp är ansvarig för en del av XLSX-strukturen:

MapperXML delResponsibility
WorkbookXmlMapperxl/workbook.xmlMetadata på arbetsboknivå, referenser till ark, definierade namn
WorksheetXmlMapperxl/worksheets/sheetN.xmlCelldata, formler, hyperlänkar, villkorliga format, datavalidering
SharedStringTableXmlMapperxl/sharedStrings.xmlDelade strängtabell för de-duplicerade strängen värden
StylesheetXmlMapperxl/styles.xmlCellstilar, teckensnitt, fyllningar, gränser, siffror format

Varje kartong visar två metoder - Read och Write — inbjuds av bibliotekets last och sparar rörledningar respektive.


XmlParsingUtanför

XmlParsingException kastas när en mappa möter felformad XML som inte kan repareras. WorkbookLoadException i felhierarkiet när misslyckandet uppstår under XML-parsing specifikt.

using Aspose.Cells_FOSS;

var opts = new LoadOptions
{
    TryRepairPackage = true,
    TryRepairXml = true,
};

try
{
    var wb = new Workbook("malformed.xlsx", opts);
    Console.WriteLine("Loaded: " + wb.Worksheets.Count + " sheet(s)");
}
catch (XmlParsingException ex)
{
    Console.WriteLine("XML parse error: " + ex.Message);
}
catch (WorkbookLoadException ex)
{
    Console.WriteLine("Load error: " + ex.Message);
}

Tips och bästa praxis

  • Setade TryRepairXml = true i LoadOptions för att möjliggöra mapparens feltoleranta parningspår.
  • Catch XmlParsingException Förutom att WorkbookLoadException när hantera filer från externa system som kan producera malformade XML.
  • XML-mappklasser är inte avsedda att installeras med applikationskod – de inbjuds automatiskt under Workbook Byggandet och Save().
  • Om du behöver inspektera rå XML-innehåll för diagnoser, extrahera XLSX som en ZIP och undersöka relevanta XML delar direkt.

Vanliga frågor

IssueCauseFixar
XmlParsingException på lastXML-formad i en av XLSX-delarnaSetade TryRepairXml = true i LoadOptions
Saknade stilar efter rundturenStylesheetXmlMapper Kan inte släppa en standard-stils rekordCheck LoadDiagnostics.Issues för stilrelaterade reparationsinlägg
Delade strängar saknas i laddad filSharedStringTableXmlMapper möter en korrupt delad strängbordEnable TryRepairXml;• verifiera att originalfilen har en giltig fil xl/sharedStrings.xml

FAQ

Kan jag implementera min egen XML-mapp?

XML-mappklasser är inre infrastrukturer. anpassade mappare stöds inte i den aktuella API-ytan.

Varför finns det en separat SharedStringTableXmlMapper?

OOXML-specifikationen separerar strängvärden i en delad strängen tabell (xl/sharedStrings.xml) för att de-duplicera upprepade strängar över arbetsboken. mappen hanterar läsning och skrivande av denna tabell oberoende.

Does TryRepairXml = true Får du lösa alla XML-problem?

TryRepairXml hanterar återställbara problem som oklara element, saknade namnutrymmen och trunkade värden. Strukturellt giltiga men semantiskt oförenliga XML (t.ex. bruten formel referenser) kan fortfarande orsaka XmlParsingException.


API Referens sammanfattning

ClassBeskrivning
WorkbookXmlMapperLäs / Skriva xl/workbook.xml
WorksheetXmlMapperLäs/skriver per-sheet XML delar
SharedStringTableXmlMapperLäs / Skriva xl/sharedStrings.xml
StylesheetXmlMapperLäs / Skriva xl/styles.xml
XmlParsingExceptionUpptäck oåterkalleliga XML-pars misslyckanden

Se även

 Svenska