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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 5.00
seruy-t
2 / 2 / 0
Регистрация: 21.08.2010
Сообщений: 216
#1

0D 0A FF В конце файла после шифрования - C++

06.06.2013, 19:42. Просмотров 1565. Ответов 20
Метки нет (Все метки)

Всем привет. Пишу прогу для шифрования по алгоритму Цезаря. Знаю-знаю, целая туча таких Написал 2 для шифрования и расшифровывания одной буквы. При обработке строк и выводе их на экран проблем вроде бы нет, но когда дело доходит до файлов ... При зашифровании в конце файлов появляются лишние символи 0D 0A FF. А при расшифровывании символи 1А .
Знаю, что 0D 0A это переход на новую строку.
Выяснил, что 1А ставится на месте символов, значения которых были потеряны при передаче

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
39
40
41
42
43
44
45
char find_and_encr_char(char what_find,int key){
      char engl_abet[26]= {'q','w','e','r','t','y','u','i','o','p','a','s','d','f','g','h','j','k','l','z','x','c','v','b','n','m'};
    bool founded= false; // знайдено ?
 
      char encr_char;
      if(what_find==' ') {
          encr_char=' ';
          founded=true;
          return encr_char;
                             }
    if(what_find=='.') {
          encr_char='.';
          founded=true;
          return encr_char;
                             }
 
      for(int i=0;i<26;i++){
 
                int abskey=i+key; 
                            if(engl_abet[i]==what_find){
                                if((i+key)>26){ abskey=(i+key)%26 ; }
                                encr_char=engl_abet[abskey];
                                founded=true;
                                break;
                                                       }
                            }
 
if(founded==false) encr_char=what_find;
                              return encr_char; }
 
char find_and_decr_char(char what_find, int key)
{
 char engl_abet[26]= {'q','w','e','r','t','y','u','i','o','p','a','s','d','f','g','h','j','k','l','z','x','c','v','b','n','m'};
 
  if(what_find == ' ')         return ' ';
    if(what_find == '.')         return '.';
 
   for(int i=0;i<26;i++)
   {
      if (what_find == engl_abet[i]){
         if ((i-key) < 0)         return engl_abet[(26 - (-1*(i - key)%26))%26];
         else            return engl_abet[i-key];
   }
   }
}
P.S. Просьба не отсылать на топики с другими реализациями этого алгоритма, я там был хочу доделать именно так так задумал изначально
Миниатюры
0D 0A FF В конце файла после шифрования   0D 0A FF В конце файла после шифрования  
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.06.2013, 19:42     0D 0A FF В конце файла после шифрования
Посмотрите здесь:

Алгоритм шифрования из exe файла - C++
Hola amigos! :) На C++ к слову я мало что понимаю и столкнулся с некой необходимостью получить алгоритм шифрования обычного CD-ключа из...

Написать AES, шифрования любого файла .exe. - C++
Есть задача написать AES, который будет зашифровывать и расшифровывать любой файл .exe. Как лучше открывать этот файл, если нужно считывать...

Не понятный дополнительный символ в конце файла - C++
Друзья помогите пож-та разобраться с проблемой. Ниже простой пример посимвольного считывания из файла # include &lt;fstream&gt; # include...

Вставить после каждого слова в предложении запятую, а в конце предложения стоит точка - C++
вставить после каждого слова в предложении запятую, а в конце предложения стоит точка.

Написать программы шифрования и расшифровки файла методом циклического сдвига - C++
Написать программы шифрования и расшифровки файла методом циклического сдвига. Т.е. каждый символ исходного файла (исходный код - K1)...

Как обрезать N байт в конце файла не перезаписывая его? - C++
Как обрезать N байт в конце файла не перезаписывая его?

Удалить ненужную информацию в конце файла, не создавая другой файл - C++
Молжа ли удалить конец файла(удаление ненужной информации в конце файла)? не создавая другой файл. или как нибуть урезать его?

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.06.2013, 22:56     0D 0A FF В конце файла после шифрования
Еще ссылки по теме:

Как считать информацию из файла, если в конце стоит пробел? - C++
У меня при считывании из файла в массив, если в конце файла стоит пробел, то копируется ещё один символ (-842…..). Как определить, что в...

Ошибка C1075 в конце файла обнаружен левый непарный фигурная скобка - C++
#include&lt;iostream&gt; #include&lt;cstdio&gt; #include&lt;clocale&gt; using namespace std; int main() { int a, b, f, i; setlocale(LC_CTYPE,...

Считать текст из файла, добавить в конце каждого предложения, количество вхождений в него заданного слова - C++
Вот задание: Написать программу, которая считывает текст из файла и выводит его на экран, добавляя после каждого предложения, сколько раз...

"4102" в конце файла при записи - C++
Я не программист, я радиофизик, но у меня возникла необходимость написать программу на c++ Суть проблемы: по нажатии на кнопку в файл...

Результат после вывода из файла - C++
Здравствуйте. Есть 3 файла, в каждой 5 строчке находится число, которое надо записать в массив 'arr' и вывести его, вместо цифр...


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

Или воспользуйтесь поиском по форуму:
seruy-t
2 / 2 / 0
Регистрация: 21.08.2010
Сообщений: 216
06.06.2013, 22:56  [ТС]     0D 0A FF В конце файла после шифрования #21
alsav22, Извините
Yandex
Объявления
06.06.2013, 22:56     0D 0A FF В конце файла после шифрования
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru