Tablora

Tablora · Bibliotheek

Hoekhaken en ampersands binnen een cel behouden

Celtekst zoals A&B <sample> bevat tekens die XML reserveert. De tekstbehoudende XLSX escapet ze in het bestand en toont de oorspronkelijke tekst.

Tekens die het werkmapformaat reserveert

Een XLSX-bestand vormt een ZIP-pakket met XML-documenten, en XML geeft het ampersand, de punthaken en aanhalingstekens een speciale betekenis. Een productnotitie als A&B <sample> kan niet zomaar in het blad worden geschreven, anders raakt het bestand beschadigd en weigert de spreadsheet het te openen of biedt ze een herstel aan.

De tekstbehoudende export escapet die tekens binnen het pakket. Opent de spreadsheet het bestand, dan toont de cel dezelfde tekens die je hebt ingevoerd. Niets in de cel wordt een HTML-element, een XML-tag of een link.

A&B <sample> van plakken tot cel

Het voorbeeld op de pagina heeft één kolom met de naam note en de waarde A&B <sample>. De verwachte celtekst in de werkmap luidt A&B <sample>, opgeslagen als expliciete tekstcel in plaats van als formule of getal. Ook in het voorbeeld op deze pagina verschijnt de waarde als gewone tekst, dus de punthaken zie je als tekens en niet als opmaakcode.

Aanhalingstekens en apostrofs in een notitie worden in het bestand op dezelfde manier geëscapet en komen ook ongewijzigd aan.

Stappen voor tekst met opmaakcode

Als de export de tekst weigert

Sommige tekens kunnen in XML helemaal niet worden opgeslagen, zoals de meeste ASCII-besturingstekens die oude exports of kopiëren en plakken uit terminals achterlaten. De export weigert tekst met zulke tekens en toont Controleer de ingevoerde waarden en probeer het opnieuw., in plaats van stilzwijgend tekens weg te laten. Zoek het onzichtbare teken in je bron, verwijder of vervang het in een kopie en bereken opnieuw.

De Tablora-app werkt anders wanneer hij een XLSX schrijft vanuit een foto of pdf: hij escapet ampersands en haken op dezelfde manier, maar verwijdert tekens die XML niet kan bevatten, zodat het bestand altijd opent. Komt het bij de tekst van een cel op elk teken aan, vergelijk die dan voor het exporteren met de bron.

Een verwant geval van escapen

Ampersands en haken vormen maar één soort escapen. Tekst die eruitziet als een tekencode van SpreadsheetML, zoals _x0041_, heeft een eigen bescherming nodig, en ook die past de tekstbehoudende export toe.

Invoer

Tabeltekst
note A&B <sample>
Scheidingsteken
,

Resultaten

Rijen
2
Kolommen
1
note
A&B <sample>
Bestandsgrootte in bytes
2311

Elke spreadsheetcel wordt als tekst opgeslagen om identificatiecodes en formuleachtige inhoud te behouden.