Имеется программа, которая мониторит папку и шифрует все файлы в ней, однако при больших размерах файлов или при переносе туда таковых во время работы, программа работает некорректно
Как это можно исправить?
Код функции, которая открывает файл и записывает в другой:
Как это можно исправить?
Код функции, которая открывает файл и записывает в другой:
C++:
void encryptor(filesystem::path source, filesystem::path out, string k) {
ifstream file_target;
ofstream file_out;
file_target.open(source);
file_out.open(out);
if (!file_target.is_open()) {
cout << "ERROR" << endl;
} else {
string str;
ByteArray byte_k(k.begin(), k.end());
string big_str;
while (getline(file_target, str)) {
big_str += str;
big_str += "\n";
}
ByteArray buffer;
ByteArray big_byte_str(big_str.begin(), --big_str.end());
Aes256::encrypt(byte_k, big_byte_str, buffer);
for (auto x: buffer) {
file_out << x;
}
}
file_target.close();
file_out.close();
}