From 38e41f2eab40cf4fb11b38b18db461b12032b709 Mon Sep 17 00:00:00 2001 From: Dmitry Date: Sat, 1 Oct 2022 15:40:17 +0300 Subject: [PATCH] add README --- README.md | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..813747f --- /dev/null +++ b/README.md @@ -0,0 +1,26 @@ +# chgk_txt2json + +Конвертер **текстовых** файлов с вопросами в **JSON** формат. +Исходные файлы вопросов должны находиться в ZIP файле `baza_utf8.zip`, результат будет записан в файл `json.zip`. + +## Особенности + +### Кодировка исходных файлов + +В оригинальных файлах базы используется кодировка `KOI8-R`. +Но из за того что [tokio::AsyncBufReadExt::lines](https://docs.rs/tokio/latest/tokio/io/trait.AsyncBufReadExt.html#method.lines) работает только с `UTF-8`, эта утилита работает с файлами которые уже в кодировке `UTF-8`. + +### Алгоритм сжатия выходного архива + +Для сжатия файлов в выходном архиве используется метод `Zstandard`, т.к. он достаточно быстр и по степени сжатия сопоставим с обычным `Deflate`. + +Но для просмотра содержимого таких ZIP файлов нужно использовать ПО c поддержкой `Zstandard`, например: + +- [Modern7z](https://www.tc4shell.com/ru/7zip/modern7z) +- [7-Zip-zstd](https://github.com/mcmilk/7-Zip-zstd) + +## Ссылки + +- Исходная база вопросов: http://db.chgk.info +- Копия файлов базы вопросов: https://gitlab.com/b4tman/db_chgk +- Утилита конвертации кодировки текстовых файлов в ZIP архиве: https://gitea.b4tman.ru/temp/ztb_recode