Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Efox
0 / 0 / 0
Регистрация: 21.04.2017
Сообщений: 6
#1

Запись в файл , и поиск содержимого / (Библиотека) - C++

21.04.2017, 14:36. Просмотров 168. Ответов 3

Писал в "Visual Studio 2013"
Есть каталог библиотеки. Нужно записать информацию о книге в файл, посмотреть содержимое , и найти интересующею книгу при помощи поиска, что-бы посмотреть есть-ли она в каталоге или удалить.
Проблемы:
1)Если информация о книге записана русскими буквами , то при просмотре выдает кракозябры.
2)Не знаю как реализовать поиск(просмотр/удалить).

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
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
#include <iostream>
#include <fstream>
#include <string>
#include <conio.h>
using namespace std;
const int size = 10;
struct lib{
    string namebook;
    string name;
    string namehost;
    string cod;
    string year;
};
 
void input(lib *b  , int size)
{
    int j = 1, i = 0;
    ofstream outfile;
    outfile.open("Out.dat", ios::app);
    do{
        ++i;
        cout << "Введите название книги: ";
        cin >> (b + i)->namebook;
 
        cout << "Введите фамилию автора: ";
        cin >> (b + i)->name;
 
        cout << "Введите издательство: ";
        cin >> (b + i)->namehost;
 
        cout << "Введите шифр книги: ";
        cin >> (b + i)->cod;
        cout << "Введите год издания книги: ";
        cin >> (b + i)->year;
 
        cout << "______________________________________________________" << endl;
        cout << "Добавить еще? " << endl;
        cout << "1.Да   2.Нет" << endl << "Выбор: " ;
        cin >> j;
        cout << "______________________________________________________" << endl;
        
        outfile << (b + i)->namebook << " " << (b + i)->name << " " << (b + i)->namehost << " " << (b + i)->cod << " " << (b + i)->year << endl;
 
    } while (j == 1);
    
}
void output()
{
    string line;
    ifstream outfile("Out.dat");
    if (outfile.is_open())
    {
        while (!outfile.eof())
        {
            getline(outfile, line);
            cout << line << endl;
        }
        outfile.close();
    }
    cout << "Нажмите ENTER (вернуться в меню) ";
    _getch();
 
}
 
void search()
{
    
 
}
 
void menu()
{
    cout << "***    Библиотека  ***" << endl;
    cout << "1. Добавить книгу" << endl;
    cout << "2. Список книг" << endl;
    cout << "3. Поиск книги" << endl;
    cout << "4. Выход" << endl;
}
int main()
    {
    setlocale(LC_ALL, "rus");
    int nom , j = 0;
    lib b[size];
    do {
        menu();
        cout << "выбор: ";
        cin >> nom;
        system("cls");
        switch (nom)
        {
        case 1:
            input(b, size);
            system("cls");
            break;
        case 2:
            output();
            system("cls");
            break;
        case 3:
            break;
        case 4:
            j += 1;
        }
    } while (j != 1);
    
    system("pause");
    return 0;
    }
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.04.2017, 14:36
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Запись в файл , и поиск содержимого / (Библиотека) (C++):

Запись в файл содержимого консоли
int main (int argc, LPTSTR argv) { cout&lt;&lt;argv&lt;&lt;endl&lt;&lt;argv ; HANDLE hIn,...

Запись содержимого объекта в файл
Привет всем, 1-й раз столкнулся с файлами и сразу проблема :) Как записать...

Как открыть файл на запись без удаления содержимого?
нужно записать в определенную позицию в файле, а значит ios::app не подойдет....

Запись структуры в файл и поиск по структуре
Дано структуру владелец автос параметрами (имя владельца марка авто и цвет)...

Поиск маршрутов выхода из лабиринта и запись карты с найденным маршрутом в файл
Нужно провести поиск маршрутов выхода из лабиринта и запись карты с найденным...

Multimap STL - работает только запись в файл, поиск в файле не работает
И снова здравствуйте. Снова я прошу вашей помощи. Переделал программу с мапом в...

3
Michael_Atak
53 / 53 / 23
Регистрация: 26.10.2011
Сообщений: 175
Завершенные тесты: 1
21.04.2017, 14:54 #2
http://www.cyberforum.ru/cpp-beginners/thread10662.html
0
Efox
0 / 0 / 0
Регистрация: 21.04.2017
Сообщений: 6
21.04.2017, 18:29  [ТС] #3
Кракозабябра записывается в файл. То что вы кинули не поможет. Меню отображается корректно!
Запись в файл , и поиск содержимого / (Библиотека)
0
nd2
2828 / 2398 / 1054
Регистрация: 29.01.2016
Сообщений: 8,022
21.04.2017, 19:22 #4
Цитата Сообщение от Efox Посмотреть сообщение
setlocale(LC_ALL, "rus");
Это только на вывод кириллицы работает. Чтобы и ввод работал:
C++
1
2
3
4
5
6
7
8
#include <windows.h>
 
int main()
{
  SetConsoleCP(1251);
  SetConsoleOutputCP(1251);
  ...
}
В свойствах консоли выбрать шрифт: Lucida Console.
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.04.2017, 19:22
Привет! Вот еще темы с решениями:

Файл: Привести кодировку содержимого файла к кодировке консоли и сохранить результат как новый файл.
Задача такая: Программа должна получать на вход путь к текстовому файлу,...

Запись на sd карту. Библиотека Fatfs
Доброго времени суток, ребят, такая проблема, нужно записать данные на сд карту...

Поиск в xml файле содержимого заданного тега
Есть огромный текстовый файл, где нужно найти определенное слово, после него...

Поиск простой библиотека для построения простых 2D графиков
Нужна очень простая библиотека для построения графиков на C/C++. Нужный...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

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