Cpp автоматически определяет файл для чтения шестнадцатеричных значений и необработанного двоичного содержимого.C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Cpp автоматически определяет файл для чтения шестнадцатеричных значений и необработанного двоичного содержимого.

Сообщение Anonymous »

Я пытаюсь создать функцию, которая может автоматически определять шестнадцатеричные значения и необработанные двоичные значения из входного файла. Ввод создается с использованием openssl

Код: Выделить всё

openssl rand -hex 32 > aes256.key
Я создал функцию ниже, чтобы прочитать этот файл и автоматически определить, является ли его шестнадцатеричное значение или необработанный двоичный файл.

Код: Выделить всё

std::vector readBytesFromFile(const std::string &file_path) {
// First, try reading as text to check if it's hex
std::ifstream text_file(file_path);
if (!text_file) {
throw std::runtime_error("Failed to open file " + file_path);
}

std::string content((std::istreambuf_iterator(text_file)),
std::istreambuf_iterator());
text_file.close();

// Remove whitespace/newlines to get clean hex string
std::string cleaned;
for (char c : content) {
if (!std::isspace(static_cast(c))) {
cleaned += c;
}
}

std::cout 

Подробнее здесь: [url]https://stackoverflow.com/questions/79815776/cpp-auto-detect-the-file-to-read-hex-values-and-raw-binary-content[/url]
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»