Форум программистов, компьютерный форум CyberForum.ru

работа с файлами - C++

Восстановить пароль Регистрация
 
Naruto88
0 / 0 / 0
Регистрация: 25.03.2011
Сообщений: 18
13.12.2012, 09:24     работа с файлами #1
Здравствуйте! Помогите реализовать функцию для работы с файлами. Нужно чтобы программы работала в таком виде:
enter key: 123456789123456789 // по за просу ввести ключ мы его вводим, затем нажав на кнопку ввод появляется следующая строчка
enter src file name: d\a.txt // по запросу ввести имя исходного файла мы его вводим, после того как мы ввели имя файла должно произойти следующее:
1. программа загрузит файл в память;
2. затем содержимое файла должно считаться в буфер;
3. после того как вся информация из файла будет считана в буфер, мы должны будем ее расшифровать;
4. поскольку данная функция может работать только с информацией размер блоков которой равен 16, процесс расшифрование будет таким:
а. из буфера 1 считать информацию блоками по 16 в буфер 2
б. после того как информация из буфера 1 будет полностью считана в буфер 2, функция для записи в файла должна на жестком диске создать файл и записать туда информацию из буфера 2.
В результате процесс работы программы должен быть таким:
enter key:123456789123456789 // по запросу вводим 128 битный ключ чтобы расшифровать информацию
enter src file name: d:\a.txt // по запросу вводим имя исходного файла в котором находится зашифрованная информация. После этого запускается механизм расшифрования по тому принципу который был описан выше.
enter res file name: d:\a1.txt // по запросу вводим имя файла в котором будет находится расшифрованная информация.
между строчками с вводом исходно файла и расшифрованного файла должно отображаться за которое было выполнено расшифрование. функцию для подсчета времени желательно выполнить с помощью clock
enter src file name: d:\a.txt
время выполнения на CPU: 500 миллисекунд
enter res file name: d:\a1.txt
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#include <stdio.h>
#include "rijndael.h"
 
#define KEYBITS 256
 
int main(int argc, char **argv)
{
unsigned long rk[RKLENGTH(KEYBITS)];
unsigned char key[KEYLENGTH(KEYBITS)];
int i;
int nrounds;
char password[80], fname[80];
printf("Enter key: "); // ввод 128-битного ключа
gets_s(password);
printf ("Enter src file name: "); // ввод файла, например d:\a.txt
gets_s(fname);
for (i = 0; i < sizeof(key); i++)
key[i] = *password != 0 ? (*password++) : 0;
input = fopen(fname, "rb");
if (input == NULL)
{
fputs("File read error", stderr);
return 1;
}
nrounds = rijndaelSetupDecrypt(rk, key, 256);
while (1)
нужные функции должны выполняться здесь
/*{
unsigned char plaintext[16];
unsigned char ciphertext[16];
int j;
if (fread(ciphertext, sizeof(ciphertext), 1, input) != 1)
break;
rijndaelDecrypt(rk, nrounds, ciphertext, plaintext);
fwrite(plaintext, sizeof(plaintext), 1, stdout);
}*/
fclose(input);
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.12.2012, 09:24     работа с файлами
Посмотрите здесь:

C++ Работа с файлами
[С++] Работа с файлами C++
C++ Работа с файлами
C++ Работа с файлами
C++ Работа с файлами в C, C++
C++ работа с файлами
C++ Работа с файлами
Работа с файлами C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

Текущее время: 08:34. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru