Много у кого вопросы, как можно было реализовать этот самый примитивный шифровальщик без библиотеки Qt. Вот хорошо закоментированный пример специально для вас - Код от WildMan'a:
Code
#include <stdio.h>
int main(int argc, char** argv)
{
FILE *f; //указатель на файл на диске
int n = 0; // тут будем хранить количество записей, примитивно, но быстро и понятно
char temp[1024]; // это временный буфер, туда читаем весь файл, потом от туда записываем в файл, расход по памяти конечно, но опять же бытсро и понятно, без извращений в операциях с файлом
f = fopen(argv[1], "r+"); //открываем файл на запись/чтение (второй параметр мод открытия), первый - путь до файла (тут путь который задан аргументом в командной строке)
while(!feof(f)) //пока файл не кончился
{
fread(&temp[n], sizeof(char), 1, f); //читаем по одному байту из файла в массив, можно читать сразу все, но так нагляднее, т.е. можно без цикла за всего один вызов fread прочесть весь массив из файла
n++;
}
for(int i = 0; i < n-1; i++)
{
temp[i]-=1; //типо шифруем <img rel="usm" src="http://fevt.3dn.ru/Smiles/smile3.gif" border="0" align="absmiddle" alt=":)">
}
fseek(f, 0, SEEK_SET); //сдвигаем указатель в файле на 0 (начало), первый параметр - файл, второй - позиция, третий - мод откуда считать (в нашем случае с начала)
for(int i = 0; i < n-1; i++)
{
fwrite(&temp[i], sizeof(char), 1, f); //пишем в файл, параметры такие же как и в fread, опять же можно за раз, ксттаи вместо sizeof(char) можно сразу его размер писать (1 байт), но так более переносимо и универсально
}
fclose(f); //закрываем файл
return 0;
}
Это простое консольное приложение на С++ в качесте примера! Здесь не делается проверка параметров, поэтому при простом запуске .exe файла прога вылетит!
Работает так: мышкой наводите любой файл на .exe файл.. он шифруется (алгоритм очень примитивный, разберётесь^^ ). Расшифровщик тоже не предусмотрен.. сами додумаете, кому надо)) главное принцип, что бы вам был ясен.
Прикреплен архив с проектом под вижлСтудию...