172 похожих чатов

Добрый день, подскажите, как оптимально читать большие файлы(текст) в кодировке

utf-16(le)?

17 ответов

12 просмотров

в расте есть методы по буферизованному/небуферизованнюому чтению файлов целиком и по кускам. Отдельно есть либы для конвертации байтовых слайсов в строки.

Αλεχ Zhukovsky
в расте есть методы по буферизованному/небуферизов...

Я не ТС, но возник следственный вопрос - а как при этом читать, чтобы не получить сломанный промежуточный вывод, если я захватил кодпоинт, который связан с другим кодпоинтом, но второй кодпоинт я ещё не прочёл

Ivan Leshchenko
Я не ТС, но возник следственный вопрос - а как при...

в случае utf16 все просто - бери четное количество байт и посреди кодпоинта не окажешься

Hesse-Halons Автор вопроса
Αλεχ Zhukovsky
в расте есть методы по буферизованному/небуферизов...

хмм, а есть способ открыть "поток" и читать файл побайтово? я не нашёл такой реализации...

Hesse Halons
хмм, а есть способ открыть "поток" и читать файл п...

можно select/poll вызывать внутри loop и читать по несколько байт

Hesse-Halons Автор вопроса
Oleg ℕižnik
А как же 4-байтовые символы

Ну можно хвост отрубать и потом подсовывать к следующему чанку, но возражение принято

Hesse-Halons Автор вопроса
Roman
зачем?

ну получается ,если я буду брать буфферизированный некий кусок(к примеру методом read у file), то для дальнейшей обработки мне потребуется по этому буфферезированному куску итератором проходится, и я вероятно не прав, так как я не знаю как read забирает эти байты у файла

Hesse-Halons Автор вопроса
Roman
ну и что?

это не двойная работа? почему я сразу не могу обработать входящие байты по одному

Hesse Halons
ну получается ,если я буду брать буфферизированный...

ну надо будет, да, а что не так? Буфер на то и буфер чтобы заполняться

Hesse-Halons Автор вопроса
Hesse Halons
файл 10гб, и дробить его придётся знатно

его и так ОСь дробить будет. Вопрос только что тебе от этих 10гб надо. Если бегать взад-вперед то ничего хорошего скоре всего не получится. Если просто что-то найти в тексте - тогда другое дело

Похожие вопросы

Обсуждают сегодня

а через ESC-код ?
Alexey Kulakov
29
30500 за редактор? )
Владимир
47
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
13
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
в JclConsole объявлено так: function CtrlHandler(CtrlType: DWORD): BOOL; stdcall; - где ваше объявление с stdcall? у вас на картинке нет stdcall
Karagy
8
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
Ребят в СИ можно реализовать ООП?
Николай
33
Вот еще странный косяк, подскажите как бороться. Я git clone сделал себе всего embassy и примеры там запускаю. Всё хорошо. Но вот решил в cargo.toml зависимости не как в приме...
Lukutin R2AJP
2
program test; {$mode delphi} procedure proc(v: int32); overload; begin end; procedure proc(v: int64); overload; begin end; var x: uint64; begin proc(x); end. Уж не знаю...
notme
6
Карта сайта