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

Запись в структуру из файла. База данных - C++

Восстановить пароль Регистрация
 
 
Greeezly
 Аватар для Greeezly
6 / 6 / 1
Регистрация: 31.08.2012
Сообщений: 230
17.12.2013, 17:33     Запись в структуру из файла. База данных #1
Добрый день. Помогите советом, очень нужно, т.к. собираюсь доделать за ближайшие часы.

Я пишу базу данных на основе двусвязного списка. Сделал, чтобы все записывалось в файл. Теперь пишу, чтобы можно было считать и дописать базу.

Вот в чем проблема:

вот моя база в txt:
Код
=================================================================
Name:          Number:          Size:          
dima          123213           123132         
leha          1231             12313          
misha        67568             5657           
=================================================================
По скольку таблиц в Сипипи я не знаю, делал табличку с помощью пробелов.
Теперь я построчно считываю файл в строки, разделяю на слова и пытаюсь запихнуть все это обратно в структуры.
Если кто знает более рац способ, сообщите пж.

вот на чем остановился:

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
char F[] = "A:/file2.txt";
ifstream infile;
infile.open(F,ios::in|ios::binary);
    
if(!infile.is_open()) // если файл не открыт
cout << "File can not be open!\n"; // сообщить об этом
else
{
        int SIZE = 67;
        infile.seekg(SIZE);
    int size;
    size = 80;
        string s;
        Data *y = new Data[n];
    const char separator[]=" ";
    for(int i=0;i<n;i++)
    {
              int count = 0;
        while (!infile.eof()))
        {
            getline(infile,s);
                        char *a = new char[120];
            strcpy(a, s.c_str() );
            ptr = strtok(a,separator);
                        cout<<s<<endl;
                }
                infile.close();
        }
}
у форума какая-то проблема с табуляцией, раньше такого не было. ..

В общем, по словам разделяется и выводится на экран, но вылетает ошибка связанная с памятью. Подозреваю, что из-за последней строчки с =====. Как ее не трогать я хз, сверху seekg использовал, а снизу как..
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Greeezly
 Аватар для Greeezly
6 / 6 / 1
Регистрация: 31.08.2012
Сообщений: 230
18.12.2013, 20:16  [ТС]     Запись в структуру из файла. База данных #21
По сути да, т.е. если все правильно подобрать, то работает, но практического значения мало.

Добавлено через 1 минуту
Цитата Сообщение от Alexsandr_S Посмотреть сообщение
outfile.write((char*)&x[i],sizeof(x[i])); outfile.write((char*)&x[i],sizeof(надо имя структуры а не отдельный элемент ));
а где вы здесь увидели отдельный элемент?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Alexsandr_S
5 / 5 / 1
Регистрация: 23.10.2013
Сообщений: 18
18.12.2013, 20:19     Запись в структуру из файла. База данных #22
x[i] ;
Greeezly
 Аватар для Greeezly
6 / 6 / 1
Регистрация: 31.08.2012
Сообщений: 230
18.12.2013, 20:21  [ТС]     Запись в структуру из файла. База данных #23
x[i] это и есть самостоятельная структура
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.12.2013, 20:47     Запись в структуру из файла. База данных
Еще ссылки по теме:

Считывание данных из текстового файла в структуру C++
Разработка программы конвертации csv файла в xml структуру данных C++
Ввод с клавиатуры данных и запись их в структуру C++

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

Или воспользуйтесь поиском по форуму:
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
18.12.2013, 20:47     Запись в структуру из файла. База данных #24
Цитата Сообщение от Alexsandr_S Посмотреть сообщение
надо имя структуры а не отдельный элемент
Не надо. Элемент в массиве и есть структура.
Yandex
Объявления
18.12.2013, 20:47     Запись в структуру из файла. База данных
Ответ Создать тему
Опции темы

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