utf-16(le)?
в расте есть методы по буферизованному/небуферизованнюому чтению файлов целиком и по кускам. Отдельно есть либы для конвертации байтовых слайсов в строки.
Я не ТС, но возник следственный вопрос - а как при этом читать, чтобы не получить сломанный промежуточный вывод, если я захватил кодпоинт, который связан с другим кодпоинтом, но второй кодпоинт я ещё не прочёл
https://docs.rs/encoding_rs/0.7.2/encoding_rs/
в случае utf16 все просто - бери четное количество байт и посреди кодпоинта не окажешься
хмм, а есть способ открыть "поток" и читать файл побайтово? я не нашёл такой реализации...
А как же 4-байтовые символы
можно select/poll вызывать внутри loop и читать по несколько байт
это я так понимаю из C?
Ну можно хвост отрубать и потом подсовывать к следующему чанку, но возражение принято
ну получается ,если я буду брать буфферизированный некий кусок(к примеру методом read у file), то для дальнейшей обработки мне потребуется по этому буфферезированному куску итератором проходится, и я вероятно не прав, так как я не знаю как read забирает эти байты у файла
это не двойная работа? почему я сразу не могу обработать входящие байты по одному
ну надо будет, да, а что не так? Буфер на то и буфер чтобы заполняться
файл 10гб, и дробить его придётся знатно
его и так ОСь дробить будет. Вопрос только что тебе от этих 10гб надо. Если бегать взад-вперед то ничего хорошего скоре всего не получится. Если просто что-то найти в тексте - тогда другое дело
Обсуждают сегодня