Как работает форматирование JSON, XML и CSV
Каждый форматтер, минификатор и валидатор в этом семействе делают один и тот же первый шаг перед чем-либо: он полностью анализирует ваш ввод с помощью реального синтаксического анализатора — json.parse для json, собственного Domparser браузера для XML. Это имеет значение, потому что это означает, что форматтер или минитатор не могут молчаливо «исправлять» сломанный ввод во что-то, что выглядит правдоподобным, но не является вашими фактическими данными; Неверный ввод немедленно отклоняется, с тем же конкретным сообщением об ошибке, которое покажет специальный валидатор.
Для JSON оба инструмента сначала проверяют синтаксис, а затем изменяют только пробелы за пределами строк. Форматирование предлагает 2 пробела, 4 пробела или вкладки; Minifying удаляет незначительные пробелы. Числовая орфография, экранированные строки, порядок элементов и дублирующиеся элементы объекта остаются неизменными, избегая потери округления или дубликата-члена, которая может возникнуть при преобразовании JSON в значения JavaScript и обратно.
XML работает аналогично, но требует дополнительной ручной работы, так как браузеры не предоставляют встроенную «красивую печать» для XML, как это делают для JSON. XML-форматтер обходит анализируемое дерево документов и реконструирует его вручную с помощью 2-пространственного отступа; XML Minifier ходит по тому же дереву и реконструирует его без пробелов в промежуточном теге. Оба начинаются с успешного анализа документа, поэтому, как и в случае с JSON, искаженный XML-файл ловится до того, как какой-либо инструмент производит какой-либо результат.
Форматтер CSV и CSV Cleaner используют родственный, но особый подход, поскольку CSV не имеет единой канонической грамматики, как это делают JSON и XML. CSV Formatter повторно анализирует ваш файл и переписывает его с согласованными кавычками и окончанием строк (стиль RFC 4180), который исправляет файлы со смешанными окончаниями строк или противоречивыми цитатами. CSV Cleaner идет дальше: он обрезает бродячие пробелы из каждой ячейки и отбрасывает полностью пустые строки — две наиболее распространенные проблемы в редактируемых вручную или плохо экспортируемых электронных таблицах — не касаясь фактических значений в какой-либо ячейке.
Для этого инструмента все это происходит полностью в вашем браузере. Ваш файл никогда не загружается на сервер, действителен он или нет.
Связанный инструмент
- ToolJSON Formatter
- ToolJSON Minifier
- ToolJSON Validator
- ToolXML Formatter
- ToolXML Minifier
- ToolXML Validator
- ToolCSV Formatter
- ToolCSV Cleaner