Tablora · Библиотека
Обработать метку порядка байтов в первой ячейке
Перед первым заголовком может стоять метка порядка байтов UTF-8. Анализатор удаляет одну такую метку в начале, и первая ячейка читается как id без скрытых символов.
Невидимый символ перед заголовком
Многие программы, включая вариант CSV UTF-8 в Excel, начинают текстовый файл с метки порядка байтов — символа U+FEFF, который сообщает программе чтения, что файл в UTF-8. В большинстве редакторов он невидим, но это всё равно символ. Если инструмент его не удаляет, первым заголовком становится метка, за которой идёт id, и любой поиск или соединение по столбцу id не срабатывает без видимой причины.
Анализатор удаляет одну метку порядка байтов в самом начале вставленного текста, прежде чем читать ячейки. Тогда первый заголовок — ровно id.
Пример: заголовок id,name
В примере на странице заголовок id,name, который начинается с метки порядка байтов, за ним запись 1,Mira, разделитель полей — запятая. Анализатор показывает 2 строки и 2 столбца, а в строке 1, столбце 1 стоит id без скрытого префикса.
Больше в тексте ничего не меняется: остальные ячейки сохраняют все свои символы.
Без этого шага первый заголовок выглядел бы на экране так же, но при сравнении оказывался бы другим — как раз такое несовпадение заметить труднее всего.
Проверка файла, в котором может быть метка
- Вставьте весь файл, начиная с первого символа, в «Текст таблицы».
- Нажмите «Рассчитать» и посмотрите на первый заголовок в предпросмотре.
- Если сравниваете заголовки с другим файлом, делайте это после того, как оба прошли через анализатор.
- Не считайте это удаление общей чисткой пробелов. Удаляется только одна метка в самом начале.
- Если вы склеиваете несколько файлов в один текст, метка, которая стояла в начале второго или третьего файла, теперь находится посреди текста и остаётся в той ячейке, куда попала.
Метки посреди текста и в экспорте
Метка посреди текста остаётся частью своей ячейки. Очистка повторных заголовков перед сравнением обрезает пробелы и подобные символы по краям ячеек, и эта обрезка охватывает и метку порядка байтов в начале ячейки, так что повторный заголовок из второго склеенного файла всё равно может быть распознан. Однако ячейки в результате этот символ сохраняют.
Экспорт в CSV из приложения Tablora намеренно начинается с метки порядка байтов, чтобы электронные таблицы правильно открывали текст с диакритикой, турецкий, японский и другой нелатинский текст. Если вставить такой файл сюда, анализатор удалит эту метку, и первый заголовок придёт чистым.
Другие невидимые символы
Пробелы нулевой ширины и похожие символы не удаляются. Если заголовок всё ещё не совпадает после этого шага, ищите их в источнике.
Входные данные
- Текст таблицы
- id,name 1,Mira
- Разделитель полей
- ,
Результаты
- Строки
- 2
- Столбцы
- 2
| id | name |
|---|---|
| 1 | Mira |
- Строки с другой шириной
- 0