чтение из бинарного файла в std::string

Требуется прочитать файл в двоичном режиме с произвольного места и произвольной длинны. Результаты записывать в std::string(каждый раз переписывая строку) как лучше это сделать?

#include <string>
#include <fstream>
#include <iostream>

void main()
{
    std::string target;
    uint32_t adr = 10;
    uint32_t len = 16;
    std::ifstream file;
    file.open("test.bin",  std::ios::binary);
    for (int i = 0; i < 100; i += 20)
    {
        file.seekg(adr+i, std::ios_base::beg);
        // соответственно первое что пришло на ум
        file.read(&target[0], len);
        std::cout << target.size() << std::endl;
    }
}

пробовал так же крутится вокруг std::istreambuf_iterator , copy_n и тому подобное но результата так и не добился.


Ответы (0 шт):