Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Запись в текстовый файл...


Garry ©   (2005-01-07 13:22:00) 

AssignFile(F, 'data.ini');
Rewrite(F);
WriteLn(F, Form2.Edit1.Text);
WriteLn(F, Form1.Edit1.Text);
WriteLn(F, Form1.Edit2.Text);
closeFile(F);
Есть вот такой участок кода, записывает в каждую строку текстового файла данные из edit_ов.
Как можно указать номер строки в которую он будет записывать те или иные данные.
Ну например первые данные записываются в первую строку...
Вторые в пятую строку....
Третьи в девятую .... и т.д


Anatoly Podgoretsky   (2005-01-07 13:47:00) [1]

Естественно стирает, а что ему еще делать. Текстовые файлы - это файлы последовательного доступа. Переходи на типизированые или бинарные, там можно позиционироваться или загрузай в TStringList и там делай свои строчки.
Ты очень неверно поставил вопрос, поэтому получил не совсем те ответы, которые тебе нужны. Я и сейчас не уверен.


uny   (2005-01-07 13:46:00) [2]

WriteLn(F,'сколько надо пробелов');


Garry   (2005-01-07 13:42:00) [3]

to Anatoly Podgoretsky
Я попробовал но он не переходит а стирает строчку...
У меня идёт проверка..
если в строчке есть текст то надо перейти на другую и так пока не попадётся пустая строчка и на неё записывать данные...
а если написать WriteLn(F) строчка стриется ,становится пустой .


Anatoly Podgoretsky   (2005-01-07 13:37:00) [4]

А они и будут пустые, и согласно твоему требованию запись в 1, 5 и 9 строки. Другой вопрос зачем тебе это надо, для красоты чтоли?


Garry   (2005-01-07 13:35:00) [5]

А если пустые? Ну...имеется в виду что data.txt and data.ini
равносильны...просто текстовый файл....


Anatoly Podgoretsky   (2005-01-07 13:32:00) [6]

WriteLn(F) три раза


SlyFox   (2005-01-07 13:31:00) [7]

Использовать Ini-файлы (если data. ini- не пустые слова, конечно):

uses IniFiles;

procedure TForm1.FormCreate(Sender: TObject);
var
Ini: TIniFile;
begin
Ini := TIniFile.Create (ChangeFileExt (Application.ExeName, '.ini'));
try
  Label1.Caption := Ini.ReadString ('SectionName', 'Ident', 'DefaultValue');
finally
  Ini.Free
end
end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
var
Ini: TIniFile;
begin
Ini := TIniFile.Create (ChangeFileExt (Application.ExeName, '.ini'));
try
  Ini.WriteString ('SectionName', 'Ident', Label1.Caption);
finally
  Ini.Free
end
end;


Poirot   (2005-01-07 13:26:00) [8]

ручками, более никак.... есть только через стримы попробовать, но я в этом не спец:)
Можно извратится и сделать через TStringList, но это изврат.. а просто в файл вставлять строки низя:) аксиома:) хотя... (с)


Наверх

Титульная страница Поиск, карта сайта Написать письмо