Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 20.03.2013, 15:03   #1
Aleksey68
Пользователь
 
Регистрация: 19.03.2013
Сообщений: 26
Восклицание запись в txt и поиск

В общем пытаюсь написать программу. Суть такая. Есть форма для заполнения. 6 EditControl и 1 ComboBox. создал кнопку для записи в файл этих данных. Но в файл заносится например вместо вводимой фамилии Иванов вот это- 0034E2F0.и так со всеми буквами. латинские, русские. цифры отображаются как надо. это проблема раз. А вторая проблема такова. Есть так же кнопка Поиск. Так вот, помогите как организовать этот поиск по этому же файлу. В первый EditControl вводится фамилия нажимаем кнопку Поиск и в другие EditControlы забиваются данные совпадающие в базе с этой фамилией, т.е. имя, отчество, и в моем случае спектакль в котором играет человек(это в ComboBox должно быть) и дальше сколько билетов было на этот спектакль. В общем прощу помощи. заранее спасибо.
Aleksey68 вне форума Ответить с цитированием
Старый 20.03.2013, 15:08   #2
ROD
Linux C++ Qt ARM
Старожил
 
Аватар для ROD
 
Регистрация: 30.11.2008
Сообщений: 3,030
По умолчанию

Выкладывайте некорректно работающих код. Здесь телепаты не водятся.
Дилетант широкого профиля.

"Слова ничего не стоят - покажите мне код!" © Линус Торвальдс
ROD вне форума Ответить с цитированием
Старый 20.03.2013, 16:12   #3
Aleksey68
Пользователь
 
Регистрация: 19.03.2013
Сообщений: 26
По умолчанию

вот код для кнопки которая записывает в файл
Код:
void CaaaaDlg::OnBnClickedButton1()
 {
 UpdateData(true);

 char *locale=setlocale(LC_ALL,"RUS"); //пробовал чтобы по русски в файл заносилось
 CString r;
 int q=0;
 if (a) //работа с переключателями.тоже заносится в файл в зависимости от выбранного варианта
 q=1;
 if (b)
 q=2;
 if (c)
 q=3;
 s.GetLBText(s.GetCurSel(),r);
 fstream datei; 
 datei.open("baza1.txt",ios::app);
 if(!datei)
 {
 cout<<"Error"<<endl;
 }
 else
 {


 datei<<fam<<" "<<imya<<" "<<otch<<" "<<s<<" "<<kol<<" "<<prod<<" "<<gastr<<" "<<q<<endl;
 }
 datei.close();

 UpdateData(false);
 }

Последний раз редактировалось Stilet; 20.03.2013 в 16:53.
Aleksey68 вне форума Ответить с цитированием
Старый 20.03.2013, 17:09   #4
Fanyuus
Форумчанин
 
Аватар для Fanyuus
 
Регистрация: 07.05.2011
Сообщений: 169
По умолчанию

может проблема в конвертации данных?


Код:
 s.GetLBText(s.GetCurSel(),r);
откуда взяли переменную s, если у вас
Код:
CString r;
?

Может, из-за этого?
Fanyuus вне форума Ответить с цитированием
Старый 20.03.2013, 17:54   #5
Aleksey68
Пользователь
 
Регистрация: 19.03.2013
Сообщений: 26
По умолчанию

врядли изза этого. переменная s отвечает за ComboBox, у меня есть список спектаклей в которых играют актеры:
Код:
BOOL CaaaaDlg::OnInitDialog()
{
	CDialog::OnInitDialog();
	s.AddString(_T("Ревизор"));
	s.AddString(_T("Женитьба"));
	s.AddString(_T("Гроза"));
	s.AddString(_T("Ханума"));
	s.AddString(_T("Шинель"));
	s.AddString(_T("Лир"));
	s.AddString(_T("Сирано де Бержерак"));
	s.AddString(_T("Женитьба Бальзаминова"));
	s.AddString(_T("Дама с камелиями"));
	s.AddString(_T("Горячее сердце"));
	s.AddString(_T("Вишнёвый сад"));
	s.AddString(_T("Отцы и дети"));
	s.AddString(_T("Горе от ума"));
	s.AddString(_T("Три сестры"));
	s.SetCurSel(0);
допустим то что отображается в файле некорректно для моего восприятия. но как поиск по нему произвести. чтобы по совпадению с введенной фамилией выдавалась остальная информация

Последний раз редактировалось Stilet; 20.03.2013 в 21:11.
Aleksey68 вне форума Ответить с цитированием
Старый 20.03.2013, 17:59   #6
Fanyuus
Форумчанин
 
Аватар для Fanyuus
 
Регистрация: 07.05.2011
Сообщений: 169
По умолчанию

база данных. Как там... Поиск по ключу.
Так, у тебя не БД, у тебя файл, значит "поиск в подстроке"?

Вводишь некотрую комбинацию (например фамилию)
и погнал сравнивать по первому элементу, - нет совпадения, то переходишь на следующую строчку (или следующий элемент смотришь)

Но, как я понимаю, надо поиск по всему совпадению, т.е., если первый совпал, там же дальше цикл.
Fanyuus вне форума Ответить с цитированием
Старый 20.03.2013, 20:38   #7
Aleksey68
Пользователь
 
Регистрация: 19.03.2013
Сообщений: 26
По умолчанию

Fanyuus, в общем предполагается так сделать.
есть допустим некоторая строка в файле
Фамилия /Имя /Отчество /Спектакль(через ComboBox)/ Кол-во билетов и т.д
Иванов /Иван/ Иванович/ Отцы и дети / 500
Вот. В первый EditControl ввожу фаимлию для поиска, допустим ту же Иванов. нажимаю кнопку он ищет и если нашел совпадение должен выдать в остальные EditControlы(через которые и заносятся данные в файл) информацию.

ну или хотя бы чтобы при совпадении выдавал оставшиеся данные вобще в другой EditControl все сразу чтобы в одном было

Последний раз редактировалось Aleksey68; 20.03.2013 в 21:46.
Aleksey68 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
запись в txt и поиск по нему. Aleksey68 Помощь студентам 5 20.03.2013 14:57
выборка из TXT и запись в бд Maa1985 Общие вопросы Delphi 0 25.04.2012 14:15
Запись в FILE.txt kanich Помощь студентам 1 20.09.2010 15:35
Запись последовательности в txt NeiL Общие вопросы Delphi 1 14.04.2008 22:23