![]() |
|
![]() ![]() ![]() |
|
leporel |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 109 Регистрация: 12.2.2008 Репутация: -1 Всего: -1 |
Можно как то записать в один файл данные из TEdit и TImage и прочесть их потом?
![]() |
|||
|
||||
Ярослав |
|
|||
Бывалый ![]() Профиль Группа: Awaiting Authorisation Сообщений: 189 Регистрация: 8.6.2009 Репутация: нет Всего: -1 |
TForm1 *Form1;
int f; // дескриптор файла AnsiString st; st = Label1->Caption +" "+ Edit1->Text +"\r\n"; if ( FileExists("пример.txt") ) f = FileOpen("пример.txt",fmOpenWrite); else f = FileCreate("пример.txt"); if ( f != -1 ) { // файл открыт для записи FileSeek(f,0,2); // установить указатель на конец файла FileWrite(f,st.c_str(),st.Length()); FileClose(f); } else { /* ошибка доступа к файлу: ни открыть, ни создать не получилось */ ShowMessage("Oшибка доступа к файлу: ни открыть," "ни создать не получилось"); } ----------------------------------------- Filter для OpenDialog1 текстовые файлы|*.txt|все файлы|*.* и Title Открытие файла DefaultExt для SaveDialog1 .txt и Title Сохранение файла Кнока открыть if(Memo1->Modified) NewClick(this); if(OpenDialog1->Execute()) { Memo1->Lines->LoadFromFile(OpenDialog1->FileName); Name = OpenDialog1->FileName; Caption = "TEmemo " + Name; } Кнопка сохранить Memo1->Lines->SaveToFile(Name); кнопка сохранить как SaveDialog1->FileName = Name; if(SaveDialog1->Execute()) Memo1->Lines->SaveToFile(SaveDialog1->FileName); кнопка новый if(Memo1->Modified) { if(Application->MessageBox("Сохранить изменения?","Сохранение",MB_YESNO)==IDYES) { if(Name=="NoName") SaveAsClick(this); else SaveClick(this); } else { Memo1->Clear(); Memo1->Modified = false; } } Добавлено через 1 минуту и 47 секунд #include <stdio.h> Сохранение if(StringGrid1->RowCount==2 && StringGrid1->Cells[1][1].IsEmpty()&& StringGrid1->Cells[2][1].IsEmpty() && StringGrid1->Cells[3][1].IsEmpty()&& StringGrid1->Cells[4][1].IsEmpty()) ShowMessage("Нечего сохранять"); else { if (SaveDialog1->Execute()) { TStringList *Files=new TStringList; Files->Add(IntToStr(StringGrid1->ColCount)) ; Files->Add(IntToStr(StringGrid1->RowCount)) ; for( int cRow=1; cRow<StringGrid1->RowCount; cRow++) for( int cCol=1; cCol<StringGrid1->ColCount; cCol++) Files->Add(StringGrid1->Cells[cCol][cRow]); Files->SaveToFile(SaveDialog1->FileName); delete Files; } } //------------------------- //------------------------- Чтение if (OpenDialog1->Execute()) { TStringList *Files = new TStringList; Files->LoadFromFile (OpenDialog1->FileName); AnsiString buff; buff=Files->Strings[0]; Files->Delete(0); StringGrid1->ColCount=StrToInt(buff); buff=Files->Strings[0]; Files->Delete(0); StringGrid1->RowCount=StrToInt(buff); int Stroka=0; for( int cRow=1; cRow<StringGrid1->RowCount; cRow++) for( int cCol=1; cCol<StringGrid1->ColCount; cCol++) { StringGrid1->Cells[cCol][cRow]=Files->Strings[Stroka]; Stroka++; } for( int cRow=1; cRow<StringGrid1->RowCount; cRow++) StringGrid1->Cells[0][0]; delete Files; } //--------------- Value- Искомое значение. for( int cRow=1; cRow<StringGrid1->RowCount; cRow++) for( int cCol=1; cCol<StringGrid1->ColCount; cCol++) { if(StringGrid1->Cells[cCol][cRow]==Value) { Edit1->Text=Value; return; } } Добавлено через 2 минуты и 49 секунд //--------------------------------------------------------------------------- #include <vcl.h> #pragma hdrstop #include "Unit1.h" //--------------------------------------------------------------------------- #pragma package(smart_init) #pragma resource "*.dfm" TForm1 *Form1; int f; // дескриптор файла //--------------------------------------------------------------------------- __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { } //--------------------------------------------------------------------------- void __fastcall TForm1::Button1Click(TObject *Sender) { AnsiString st; AnsiString sr; AnsiString sp; AnsiString sz; /* файл можно открыть в режиме fmCreate, тогда, если файл существует, он будет открыт для записи, если файла нет, то он будет создан */ st = Label1->Caption +" "+ Edit1->Text +"\r\n"; sr = Label2->Caption +" "+ Edit2->Text +"\r\n"; sp = Label3->Caption +" "+Edit3->Text +"\r\n"; /* открыть для записи или создать файл пример.txt */ if ( FileExists("пример.txt") ) f = FileOpen("пример.txt",fmOpenWrite); else f = FileCreate("пример.txt"); if ( f != -1 ) { // файл открыт для записи FileSeek(f,0,2); // установить указатель на конец файла FileWrite(f,st.c_str(),st.Length()); FileSeek(f,0,2); // установить указатель на конец файла FileWrite(f,sr.c_str(),sr.Length()); FileSeek(f,0,2); // установить указатель на конец файла FileWrite(f,sp.c_str(),sp.Length()); FileClose(f); } else { /* ошибка доступа к файлу: ни открыть, ни создать не получилось */ ShowMessage("Oшибка доступа к файлу: ни открыть," "ни создать не получилось"); } } //--------------------------------------------------------------------------- Добавлено через 7 минут и 11 секунд Ну это тоже поможет. ![]() Присоединённый файл ( Кол-во скачиваний: 3 ) ![]() |
|||
|
||||
xvr |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 7046 Регистрация: 28.8.2007 Где: Дублин, Ирландия Репутация: 48 Всего: 223 |
Ярослав, к чему этот поток сознания? Как писать файлы и в хелпе описано
![]()
Можно и записать и прочесть. Вопрос в том, в каком виде вы хотите это все иметь в файле? Если простой бинарный, то пишете для каждого контрола сначала длинну данных, затем сами данные (данные читать/писать через методы (Load/Save)ToStream и через проперть Text). Если надо в текстовом виде, то немного сложнее. Данные надо перевести в что нибудь текстовое (например через base64, в BCB есть встроенные процедуры конверсии) и записать |
|||
|
||||
![]() ![]() ![]() |
Правила форума "С++ Builder" | |
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C++ Builder | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |