Tablora · Knihovna
Zachovejte text podobný sekvenci SpreadsheetML
Text jako _x0041_ je escapovací kód uvnitř souborů XLSX. Převodník se zachováním textu ho chrání, takže buňka ukáže _x0041_, a ne písmeno A.
Vzor, který si formát XLSX vyhrazuje
Uvnitř souboru XLSX může text obsahovat kódy ve tvaru _x, za nímž následují čtyři šestnáctkové číslice a podtržítko, například _x0041_. Tabulkový procesor při čtení souboru dekóduje každý kód na znak, který zastupuje, takže z _x0041_ je velké písmeno A a z _x000D_ návrat vozíku. Pro software je to užitečné, ale problém nastane, když skutečná hodnota náhodou vypadá jako kód, například systémový identifikátor, název pole z databáze nebo token z logu.
Převodník se zachováním textu každý takový vzor před zápisem ochrání. Přidá escapování pro podtržítko na začátku, čímž tabulkovému procesoru řekne, aby následující znaky zobrazil doslova. Jde o samostatný krok, oddělený od escapování ampersandů a lomených závorek pro XML.
Týká se jen přesného tvaru: podtržítko, x, čtyři šestnáctkové znaky a uzavírací podtržítko. Něco jako _x41_ nebo _x0041 bez uzavíracího podtržítka je obyčejný text v souboru i v tabulkovém procesoru.
Příklad _x0041_
Příklad na stránce má jeden sloupec code s hodnotou _x0041_. Očekávaný text buňky v sešitu je _x0041_, zapsaný jako výslovný text, takže tabulkový procesor tam nevidí vzorec ani číslo. Když otevřete tablora-table.xlsx, buňka ukáže sedm znaků, které jste zadali, ne písmeno A.
Kontrola hodnot podobných escapování
- Ve zdroji hledejte podtržítko, za nímž následuje x a čtyři znaky od 0 do 9 a od A do F, zakončené dalším podtržítkem. Šestnáctkové číslice velkými i malými písmeny se berou jako kódy.
- Ověřte, že je hodnota míněna doslova. Obsahuje-li zakódovaný text už zdroj, dekódujte ho v systému, který ho vytvořil, ne tady.
- Vložte tabulku, klikněte na Vypočítat a zkontrolujte náhled.
- Použijte Stáhnout (XLSX) a porovnejte buňku v tabulkovém procesoru s originálem.
- Návraty vozíku uvnitř buňky se chrání stejně, takže také přežijí.
Escapovací vzory v jiných exportech
- Stažená CSV z nástrojů v prohlížeči zapíší _x0041_ jako prosté znaky, protože CSV žádné takové kódování nemá; uplatňuje ho až tabulkový procesor při čtení XLSX.
- Export do XLSX z aplikace Tablora escapuje ampersandy a závorky, ale tuto ochranu nepřidává, takže buňka přečtená ze stránky s _x0041_ se může zobrazit dekódovaná. U takových hodnot exportujte z aplikace CSV, nebo buňky vložte sem do převodníku se zachováním textu a stáhněte XLSX.
- V běžných tabulkách jsou tyto vzory vzácné. Narazíte-li na ně, obvykle pocházejí z technického systému a uschovat si původní soubor pro porovnání stojí za krok navíc.
Vstupy
- Text tabulky
- code _x0041_
- Oddělovač polí
- ,
Výsledky
- Řádky
- 2
- Sloupce
- 1
| code |
|---|
| _x0041_ |
- Velikost souboru v bajtech
- 2302
Všechny buňky sešitu se ukládají jako text, aby se zachovaly identifikátory a obsah podobný vzorcům.