Поиск:

Ответ в темуСоздание новой темы Создание опроса
> файлы, работа со строками 
:(
    Опции темы
MrDmitry
Дата 16.10.2009, 11:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 556
Регистрация: 10.11.2006

Репутация: нет
Всего: нет



парни помогите, нужно записать данные в файл а затем дурнуть эти данные и вставить в поля edit
запись делаю так

Код

FILE *file;
 char* file_name = "user.dat";
 AnsiString login = loginEdit->Text;
 AnsiString pass = passEdit->Text;
 AnsiString str;

 str = "user:" + loginEdit->Text + "\nlogin:" + passEdit->Text;

 file = fopen( file_name, "w" );
 fputs( str.c_str(), file );
 fclose( file );


а вот с загруской проблемы

пока делаю так

Код

AnsiString string, login, pass;
Memo1->Lines->LoadFromFile("user.dat");
string = Memo1->Lines->Text;


memo1 скрытое поле

данные передаются в строку string
дальше планирую с начало найти и присвоить переменно login строки начиная с позиции после user:
затем перейти на другую строку и сделать тоже самое с pass

но т.к в c++ не очень шарю не знаю как это сделать ((
или может есть какой то вариант по проще??? помогите плз
PM MAIL   Вверх
Alca
Дата 16.10.2009, 12:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3993
Регистрация: 14.6.2006

Репутация: 25
Всего: 50



Что-то я теряюсь...  smile

Добавлено через 2 минуты и 37 секунд
http://www.cplusplus.com/reference/iostream/ifstream/open/


--------------------
PM WWW ICQ Skype Jabber   Вверх
mrbrooks
Дата 16.10.2009, 12:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


трололомен
****


Профиль
Группа: Завсегдатай
Сообщений: 4259
Регистрация: 4.10.2006
Где: Дол Гулдур

Репутация: 167
Всего: 306



MrDmitry, Злобная смесь.

Код

#include <memory>
void __fastcall TMainForm::BtnSaveClick(TObject *Sender)
{
     std::auto_ptr<TStringList>list(new TStringList);
     list->Add("user: "+ loginEdit->Text);
     list->Add("password: " + passEdit->Text);
     list->SaveToFile("user.dat");
}
//---------------------------------------------------------------------------

void __fastcall TMainForm::BtnLoadClick(TObject *Sender)
{
     std::auto_ptr<TStringList>list(new TStringList);
     list->LoadFromFile("user.dat"); 
     String user = list->Strings[0];
         String pass = list->Strings[1];
}
//---------------------------------------------------------------------------



PM MAIL   Вверх
MrDmitry
Дата 16.10.2009, 12:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 556
Регистрация: 10.11.2006

Репутация: нет
Всего: нет



Цитата(Alca @ 16.10.2009,  12:03)
Что-то я теряюсь...  smile

Добавлено @ 12:06
http://www.cplusplus.com/reference/iostream/ifstream/open/

в смысле теряешся? 
что именно не понятно?

Код

FILE *file;
 char* file_name = "user.dat";
 AnsiString login = loginEdit->Text; 
 AnsiString pass = passEdit->Text;
 AnsiString str;
 str = "user:" + loginEdit->Text + "\nlogin:" + passEdit->Text; //формирую строку из логина и пароля
 file = fopen( file_name, "w" ); //открываю файл для записи
 fputs( str.c_str(), file ); //записываю ранне сформированную строку в файл
 fclose( file ); // закрываю файл


Добавлено через 7 минут и 25 секунд
Цитата(mrbrooks @ 16.10.2009,  12:13)
MrDmitry, Злобная смесь.

Код

#include <memory>
void __fastcall TMainForm::BtnSaveClick(TObject *Sender)
{
     std::auto_ptr<TStringList>list(new TStringList);
     list->Add("user: "+ loginEdit->Text);
     list->Add("password: " + passEdit->Text);
     list->SaveToFile("user.dat");
}
//---------------------------------------------------------------------------

void __fastcall TMainForm::BtnLoadClick(TObject *Sender)
{
     std::auto_ptr<TStringList>list(new TStringList);
     list->LoadFromFile("user.dat"); 
     String user = list->Strings[0];
         String pass = list->Strings[1];
}
//---------------------------------------------------------------------------

спасибо ваш вариант гораздо лучшем чем мой со строками smile
PM MAIL   Вверх
mrbrooks
Дата 16.10.2009, 12:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


трололомен
****


Профиль
Группа: Завсегдатай
Сообщений: 4259
Регистрация: 4.10.2006
Где: Дол Гулдур

Репутация: 167
Всего: 306



MrDmitry, вот вариант работы с двоичным файлом. Делал в CG 2009 с учетом Юникода. Хоть какая то защита. По хорошему - стоило бы применить шифрование.

Код

#include <memory>
//---------------------------------------------------------------------------
void __fastcall TMainForm::BtnSaveClick(TObject *Sender)
{
     std::auto_ptr<TStringList>list(new TStringList);
         list->Add("user: "+ loginEdit->Text);
         list->Add("password: " + passEdit->Text);
     std::auto_ptr<TFileStream>file(new TFileStream("user.dat",fmCreate));
     file->Write(list->Text.c_str(),list->Text.Length()*2);
}
//---------------------------------------------------------------------------

void __fastcall TMainForm::BtnLoadClick(TObject *Sender)
{
     std::auto_ptr<TFileStream>file(new TFileStream("user.dat",fmOpenRead));
     wchar_t *buf = new wchar_t[file->Size];
     file->Read(buf,file->Size);
     std::auto_ptr<TStringList>list(new TStringList);
     list->Text = String(buf);
         String user = list->Strings[0];
         String pass = list->Strings[1];
}
//---------------------------------------------------------------------------

PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++ Builder"
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по С++ Builder обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Настоятельно рекомендуем заглянуть в DRKB (Delphi Russian Knowledge Base) - крупнейший в рунете сборник материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C++ Builder | Следующая тема »


 




[ Время генерации скрипта: 0.1239 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.