# Конвертация

> JSON, YAML, TOML, XML, CSV, SQL, время, cron, цвета и имена.

Преобразование форматов, которые вы реально выкладываете: JSON, YAML, TOML, XML, CSV, TSV, SQL INSERT, время Unix, cron, цвета CSS, регистр имён, IPv4, hex, двоичный вид, системы счисления, размеры, единицы CSS и длительности. Разбор идёт во вкладке. Сервера конвертации нет.

Если нужно преобразовать фотографии, а не файлы данных, попробуйте [Online Image Converter](https://onlineimageconverter.net/). Если нужно объединить, разделить или сжать PDF, попробуйте [LoveThisPDF](https://lovethispdf.com/).

## Форматы данных

- [JSON ↔ YAML](https://toolbuddy.dev/ru/tools/json-yaml.md): Превращает JSON в YAML и YAML обратно в JSON в браузере. Вставьте настройку, фрагмент Kubernetes или фикстуру API и скопируйте другой формат. Разбор идёт через локальный js-yaml. Документы не уходят на сервер конвертации.
- [JSON ↔ TOML](https://toolbuddy.dev/ru/tools/json-toml.md): Превращает объекты JSON в TOML и документы TOML обратно в JSON в браузере. Удобно для фрагментов Cargo.toml, pyproject и настроек приложения. Разбор остаётся на устройстве.
- [JSON ↔ XML](https://toolbuddy.dev/ru/tools/json-xml.md): Превращает объекты JSON в XML и документы XML обратно в JSON. Полезно для остатков SOAP, RSS и смешанных API. XML разбирает DOMParser браузера, поэтому данные остаются на устройстве.
- [JSON ↔ CSV](https://toolbuddy.dev/ru/tools/json-csv.md): Превращает массив объектов JSON в CSV или разбирает заголовки CSV в объекты JSON. Разбор с учётом кавычек идёт во вкладке, так что таблицы с идентификаторами и почтой не загружаются в сервис конвертации.
- [CSV ↔ TSV](https://toolbuddy.dev/ru/tools/csv-tsv.md): Превращает значения через запятую в значения через табуляцию и обратно, сохраняя поля в кавычках. Небольшая смена разделителя для выгрузок, которые не хочется вставлять в онлайн-таблицу.
- [JSON в код](https://toolbuddy.dev/ru/tools/php-array.md): Превращает JSON в литералы JS, Python или PHP. В JS это const data, в Python True/False/None, в PHP короткие массивы и пары =>. Строки PHP в одинарных кавычках.
- [JSON в TypeScript](https://toolbuddy.dev/ru/tools/json-typescript.md): Выводит интерфейсы TypeScript из примера JSON. Вложенные объекты становятся именованными интерфейсами, а ключи, которых нет у части объектов массива, становятся необязательными. Преобразование остаётся во вкладке.
- [JSON в Go](https://toolbuddy.dev/ru/tools/json-go.md): Выводит структуры Go из примера JSON. Вложенные объекты становятся именованными типами с экспортируемыми полями и тегами json. Ключи, которых нет у части объектов массива, необязательны. Преобразование остаётся во вкладке.
- [JSON в Python](https://toolbuddy.dev/ru/tools/json-python.md): Выводит dataclass Python из примера JSON. Вложенные объекты становятся именованными классами с аннотациями типов. Ключи, которых нет у части объектов массива, необязательны. Преобразование остаётся во вкладке.

## SQL и CSV

- [JSON в SQL](https://toolbuddy.dev/ru/tools/json-sql.md): Превращает объект JSON или массив объектов в операторы SQL INSERT. Задайте имя таблицы, скопируйте запрос и оставьте строки на устройстве, а не во внешнем конвертере.
- [CSV в SQL](https://toolbuddy.dev/ru/tools/csv-sql.md): Превращает CSV в операторы INSERT. Строка заголовка становится списком столбцов. Строки остаются во вкладке.
- [Запрос к CSV](https://toolbuddy.dev/ru/tools/csv-query.md): Выполняет небольшое подмножество SQL по CSV в памяти: SELECT, WHERE col = value, ORDER BY и LIMIT. Результат показывается текстовой таблицей.

## Время и даты

- [Конвертер времени](https://toolbuddy.dev/ru/tools/timestamp-converter.md): Переводит секунды Unix, миллисекунды и ISO 8601 между собой и показывает UTC и местное время. Пустое поле берёт текущий момент. Разбор остаётся во вкладке.
- [Сравнение часовых поясов](https://toolbuddy.dev/ru/tools/timezone-compare.md): Показывает один момент времени в нескольких часовых поясах. Пустое поле берёт сейчас, иначе принимается ISO 8601. Перевод остаётся во вкладке.
- [Длительность](https://toolbuddy.dev/ru/tools/duration-converter.md): Переводит длительность между миллисекундами, секундами, минутами, часами, днями и ISO 8601. Голое число читается как миллисекунды. Годы и месяцы не имеют фиксированной длины, поэтому их нет.
- [Разбор cron](https://toolbuddy.dev/ru/tools/cron-parser.md): Объясняет выражение cron по-русски, перечисляет ближайшие запуски в текущем часовом поясе и даёт собрать поля. Вставьте строку из 5 или 6 полей. Разбор локальный, так что расписание не уходит в API cron.

## Числа и байты

- [Системы счисления](https://toolbuddy.dev/ru/tools/number-base.md): Переводит целые числа между двоичной, восьмеричной, десятичной и шестнадцатеричной записью. Использует BigInt, поэтому большие идентификаторы и битовые маски проходят без потерь. Вся арифметика локальная.
- [Большие числа](https://toolbuddy.dev/ru/tools/big-number.md): Целая арифметика на BigInt: сложение, вычитание, умножение, деление, остаток и степень. Деление отсекает к нулю. Отрицательные степени не принимаются.
- [Текст ↔ hex](https://toolbuddy.dev/ru/tools/hex-text.md): Переводит текст UTF-8 в шестнадцатеричные байты и обратно. Удобно смотреть дампы и экранированные последовательности. Кодирование остаётся во вкладке.
- [Текст ↔ двоичный](https://toolbuddy.dev/ru/tools/binary-text.md): Переводит текст UTF-8 в биты и обратно. На входе при раскодировании только 0 и 1, длина кратна 8. Пробелы пропускаются. Всё считается во вкладке.
- [Конвертер IPv4](https://toolbuddy.dev/ru/tools/ip-converter.md): Переводит адреса IPv4 между точечной записью, целым без знака, hex и двоичным видом. Полезно, когда база хранит IP как число. Это локальная арифметика IPv4. Геолокации и запроса «какой у меня IP» нет.
- [Размер данных](https://toolbuddy.dev/ru/tools/data-size-converter.md): Переводит размеры между байтами, КБ, МБ, ГБ, ТБ и двоичными КиБ, МиБ, ГиБ, ТиБ. Голое число читается как байты. Счёт остаётся во вкладке.

## Цвета, CSS и имена

- [Конвертер цветов](https://toolbuddy.dev/ru/tools/color-converter.md): Переводит цвета между HEX, RGB, HSL и CMYK в браузере. Вставьте одно значение и получите остальные формы. Разбор локальный, палитра никуда не уходит.
- [Контраст цветов](https://toolbuddy.dev/ru/tools/color-contrast.md): Считает контраст WCAG 2 между двумя цветами. Обычный текст AA требует 4.5:1, крупный 3:1, AAA это 7:1 и 4.5:1. Цвета можно задать как HEX, RGB или HSL.
- [Единицы CSS](https://toolbuddy.dev/ru/tools/css-unit-converter.md): Переводит длины CSS между px, rem, em, pt, pc, in, cm и mm. Голое число читается как px. Для rem и em задаётся базовый размер шрифта. Счёт остаётся во вкладке.
- [Регистр имён](https://toolbuddy.dev/ru/tools/case-converter.md): Переводит идентификаторы между camelCase, PascalCase, snake_case, kebab-case и другими формами. Вставьте имя и скопируйте нужный вид. Преобразование остаётся во вкладке.
