У меня возникла проблема с использованием библиотеки iostreams mapped_file.boost :: iostreams :: mapped_file ошибка пути к файлу
подталкивание документация: mapped_file
После прочтения всей документации и примеров, которые я мог читать, я до сих пор не могу получить следующий фрагмент кода, чтобы работать. Я предполагаю, что когда вы передаете new_file_size и путь к классу mapped_file_params, он откроет (и создаст) файл в нужном месте, когда я вызову конструктор mapped_file с объектом mapped_file_params в параметре. Но единственное, что он делает, это создать файл со странным именем, например «% F8/134» в рабочем каталоге проекта, а не там, где я ему рассказывал. Возможно, я ошибаюсь, и нужно создать файл, прежде чем указывать его на mapped_file? После прочтения документа я был в предположении, что он создал новый файл, когда вы заполняете параметр new_file_size. и указывает имя файла.
Кто-нибудь испытал это раньше? Любые советы по устранению этого?
Вот код:
boost::iostreams::mapped_file_params param(filename); // filename is a std::string with the correct path
param.flags = boost::iostreams::mapped_file::mapmode::readwrite;
param.new_file_size = sizeNeeded; // sizeNeeded is the size of the data
param.length = sizeNeeded;
boost::iostreams::mapped_file fileMap(param); // at this point the file is created
…
Спасибо за ваше время,
Александр
Можете ли вы попытаться инициализировать все параметры в конструкторе, например, смещение? –
Просто попробовал, и ничего не изменил – Lex