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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 1, средняя оценка - 5.00
Techno
Вирусоборец
317 / 119 / 2
Регистрация: 15.07.2011
Сообщений: 293
#1

Собственный формат файла - C++

09.04.2013, 15:56. Просмотров 496. Ответов 7
Метки нет (Все метки)

Здравствуйте!!!
Есть программа, для нее нужна некая БД в виде файла. Как сделать, чтобы этот файл понимала только программа, а в блокноте он был нечитабельным?
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.04.2013, 15:56     Собственный формат файла
Посмотрите здесь:

Найти формат неизвестного файла - C++
Задача звучит так: "Для файлов нескольких (не менее 3) широко используемых форматов составить базу данных, содержащую статистические...

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

Перевод тексового файла в бинарный формат - C++
Добрый день! Необходимо открыть текстовый файл, содержание которого не известно, и перезаписать его в новый файл, но данные записывать...

Как создать свой формат файла на Visual C++ Win32, Или С# формой - C++
Как создать свой формат файла на Visual C++ Win32, Или С# формой, чтоб откривался только єтой прогой и сохранялся этой прогой честно...

Собственный манипулятор - C++
Здорова господа! Я пытаюсь создать свой собственный манипулятор, который будет принимать основу числа: десять шестнадцать и два и само...

собственный неожиданны обработчик - C++
возникла проблема с обработкой исключений. В теории все понятно, а на практике получается бред. Не работают даже примеры, найденный на...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ternsip
660 / 188 / 6
Регистрация: 10.05.2012
Сообщений: 595
09.04.2013, 15:59     Собственный формат файла #2
Techno, нужно записывать туда данные в двоичном виде. Работа с бинарными файлами. Шифрование получится, благодаря порядку записи разных типов разных переменных.
Байт
Эксперт C
15845 / 10172 / 1524
Регистрация: 24.12.2010
Сообщений: 19,184
09.04.2013, 16:01     Собственный формат файла #3
Один из вариантов - прибавьте к каждому символу +1 по модулю 256
Можно первые 20 байтов забить какой-нибудь двоичной ерундой.
Ну а дальше - насколько фантазии хватит...
Techno
Вирусоборец
317 / 119 / 2
Регистрация: 15.07.2011
Сообщений: 293
09.04.2013, 19:13  [ТС]     Собственный формат файла #4
А можно примерчик?
Игорь с++
434 / 457 / 16
Регистрация: 26.01.2011
Сообщений: 2,032
09.04.2013, 21:22     Собственный формат файла #5
Цитата Сообщение от Techno Посмотреть сообщение
А можно примерчик?
поддерживаю
anmartex
...
1703 / 1196 / 495
Регистрация: 12.02.2013
Сообщений: 1,978
10.04.2013, 09:37     Собственный формат файла #6
Сообщение было отмечено автором темы, экспертом или модератором как ответ
А я бы воспользовался банальным xor шифрованием. Причём 1-го символа для того, чтобы просто текст не было видно, на мой взгляд, будет достаточно. Пример xor по символу '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
#include <iostream>
#include <fstream>
#include <cstring>
 
char* Code(char* begin, char* end, char key)
{
    for (char* cursor = begin; (cursor < end); ++cursor)
    {
        *cursor ^= key;
    }
 
    return begin;
}
 
int main()
{
    char text[] = "Hello World";
    size_t nText = sizeof(text) / sizeof(*text);
 
    // Записываем
    std::ofstream fout("test.bin", std::ofstream::binary);
    fout.write(Code(text, text+nText, '1'), nText);
    fout.close();
 
    std::fill(text, text+nText, '\0');
    //Читаем
    std::ifstream fin("test.bin", std::ifstream::binary);
    fin.read(text, nText);
    fin.close();
 
    std::cout << Code(text, text+nText, '1') << std::endl;
 
    return 0;
}
Файл:
Собственный формат файла

Терминал:
Название: 1111.PNG
Просмотров: 71

Размер: 1.9 Кб

P.S.: но можно и усложнить используя ключ длиною более чем 1 символ .
Игорь с++
434 / 457 / 16
Регистрация: 26.01.2011
Сообщений: 2,032
10.04.2013, 13:15     Собственный формат файла #7
anmartex, спасибо огромное!!!
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.04.2013, 13:18     Собственный формат файла
Еще ссылки по теме:

Реализовать собственный cin - C++
Я короче хочу реализовать собственный cin. Просто оно медленно работает. И в этом проблема. typedef long long ll; struct Cin{ ...

Собственный класс итератора - C++
Добрый день! Пишу сейчас одну библиотеку (не использующею STL и другие библиотеки) и для контейнеров решил написать класс итератора: ...

Собственный графический интерфейс - C++
Здравствуйте! Я пишу клиент для одного сайта, просто для проверки своих сил, я разработал собственный графический интерфейс в с++ builder,...

Собственный класс-итератор - C++
Создаю класс-итератор для класса Студенты. Сам класс студенты: #ifndef STUDENTS_H #define STUDENTS_H #include &lt;string&gt; ...


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

Или воспользуйтесь поиском по форуму:
taras atavin
Ушёл с форума.
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
10.04.2013, 13:18     Собственный формат файла #8
Цитата Сообщение от Techno Посмотреть сообщение
а в блокноте он был нечитабельным?
Он будет не читабелен, если использует не знакомую блокноту кодировку, будет зашифрован, или вообще будет бинарным.
Yandex
Объявления
10.04.2013, 13:18     Собственный формат файла
Ответ Создать тему
Опции темы

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