Tablora

Tablora · Бібліотека

Збережіть текст, схожий на escape-послідовність SpreadsheetML

Текст на кшталт _x0041_ — це код екранування всередині файлів XLSX. Конвертер зі збереженням тексту захищає його, і клітинка показує _x0041_, а не літеру A.

Шаблон, зарезервований форматом XLSX

Усередині файлу XLSX текст може містити коди вигляду _x, далі чотири шістнадцяткові цифри й підкреслення, наприклад _x0041_. Електронна таблиця, читаючи файл, декодує кожен код у символ, який він позначає, тож _x0041_ стає великою літерою A, а _x000D_ — поверненням каретки. Для програм це зручно, але стає проблемою, коли реальне значення випадково схоже на код — наприклад, системний ідентифікатор, ім’я поля з бази даних чи токен із журналу.

Конвертер зі збереженням тексту захищає кожен такий шаблон перед записом. Він додає екранування для підкреслення на початку, і це повідомляє електронній таблиці, що наступні символи треба показати буквально. Це окремий крок, не пов’язаний з екрануванням амперсандів і кутових дужок для XML.

Зачіпається лише точна форма: підкреслення, x, чотири шістнадцяткові символи й закривальне підкреслення. Щось на кшталт _x41_ або _x0041 без закривального підкреслення — звичайний текст і у файлі, і в електронній таблиці.

Приклад з _x0041_

У прикладі на сторінці один стовпець з назвою code і значенням _x0041_. Очікуваний текст клітинки в книзі — _x0041_, записаний як явний текст, тож електронна таблиця не бачить там ні формули, ні числа. Коли ви відкриєте tablora-table.xlsx, клітинка покаже сім введених вами символів, а не літеру A.

Перевірка значень, схожих на коди

Шаблони екранування в інших експортах

Вхідні дані

Текст таблиці
code _x0041_
Роздільник полів
,

Результати

Рядки
2
Стовпці
1
code
_x0041_
Розмір файлу в байтах
2302

Усі клітинки електронної таблиці зберігаються як текст, щоб зберегти ідентифікатори та вміст, схожий на формули.