Это был вопрос от проблемы кодирования и я не мог понять, каким образом сделать это -Аналогичную сетевой протокол для передачи сообщений с использованием IStream/ostream
Реализовать закодировать() и декодирование() для простой проволоки протокол на прототипы ниже:
void encode (const std::string& inputFilename, std::ostream& out);
void decode (std::istream& in, const std:string& outputFilename);
Допустим, что существует несколько файлов, и каждый содержит одно сообщение. Как уже сказано из прототипа, encode должен читать один указанный файл с диска и размещать сообщение в Ostream.
Декодирование должно считывать одно кодированное сообщение из istream и помещать его в указанный файл. Содержимое двух соответствующих файлов должно быть идентичным.
Легко, если я могу прочитать файл в методе кодирования и поместить данные в буфер и отправить их в другой файл в методе декодирования, но это не вопрос. Как читать данные с std::istream
без ввода фактических данных на консоли (например, std::cin
)?
Заранее благодарим за ваше время и хотели бы видеть ответы на это!
Спасибо, что указал мне в правильном направлении. Когда я начал изучать больше в I/OStringstream, я узнал, что мне придется использовать ostringstream :: rdbuf для копирования данных в потоке из кодирования для декодирования. Это правильный путь? –