Запись в файл с помощью шестнадцатеричного кода

Суть задания такова нужно сделать приложение для перекодировки файла, а именно: нам дан txt файл с кодировкой UTF-8 с русским текстом-надо получить другой txt файл в котором при открытии в кодировке UTF-8 отображаются каракули но если мы переключимся на KOI8R то получаем текст изначальный. Я решил это сделать с помощью таблицы транслитерации- то есть получаю все коды из исходного файла в шестнадцатеричном виде и сопоставляю с кодами тех же букв но с кодировкой KOI8R, так вот коды я получил изначального файла (код ниже) но я не могу понять как записать в файл символы зная только их шестнадцетеричный код?

#include "stdafx.h"
#include <iostream>
#include <stdio.h>
#include <fstream>
#include <stdlib.h>

#define SIZE 100
#define IFILE "input.txt"

using namespace std;
int main()
{
char buf[SIZE];
FILE* f;
if ((f = fopen(IFILE, "r")) == NULL)
{
    perror("fopen");
    exit(1);
}

if ((fgets(buf, SIZE, f) == NULL) && ferror(f))
{
    fprintf(stderr, "Error reading from stream\n");
    exit(2);
}

std::string utf8Symbol = u8"a";
for (const auto& byte : utf8Symbol)

cout << std::hex << (byte & 0xFF) << ' ';
cout << '\n';
cout << endl;
cout << (int)buf[1] << endl;
cout << (int)buf[2] << endl;
cout << (int)buf[3] << endl;
cout << (int)buf[4] << endl;
cout << (int)buf[5] << endl;

Пытался сделать так но не работает он пишет просто как есть символы

std::ofstream out;          // поток для записи
out.open("output.txt"); // окрываем файл для записи
if (out.is_open())
{
    out << hex << "ffffffb0" << std::endl;
}

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