Delphi сохранение данных из поля Memo в файл - Forum 3Dnews Tech
Вернуться   Forum 3Dnews Tech > Софт > Программное обеспечение > Программирование
Вход через: 

Ответ Создать новую тему
 
Опции темы Опции просмотра
Старый 06.07.2011, 21:55   [включить плавающее окно]   Вверх   #1
camope3
Мужской Начинающий
Автор темы
 
Регистрация: 23.01.2009
Delphi сохранение данных из поля Memo в файл

Доброго времени суток никак не удается сохранить данные с поля Memo при закрытии формы.
Вот код:
Код:
type
  TForm1 = class(TForm)
    Button1: TButton;
..............
    memo1: TMemo;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    Procedure FormCreate(Sender: TObject)
.............

Procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
Begin
Memo1.Lines.SaveToFile('d:\!\Projects\1.txt');
End;
Procedure TForm1.FormCreate(Sender: TObject);
Begin
If FileExists('d:\!\Projects\1.txt') Then
Begin
Memo1.Lines.LoadFromFile('d:\!\Projects\1.txt');
End;
End;
Форма компилируется без ошибок. Но значение поля Memo1 при закрытии формы увы не сохраняется в файл.
1. Подскажите пожалуйста что сделано не так?
2. Если имеется более одного поля Memo то можно ли сохранять данные в один файл и впоследствии считываться с одного файла, или для каждого поля нужен отдельный файл для сохранения?
3. Можно ли при сохранении не указывать путь, а настроить так, что бы данные сохранялись в директорию с которой была запущена форма?

Всем откликнувшимся заранее благодарен!
camope3 вне форума  
Ответить с цитированием
Старый 07.07.2011, 05:30   [включить плавающее окно]   Вверх   #2
BSE
Мужской Абсолютный
 
Аватар для BSE
 
Регистрация: 08.04.2009
Цитата (camope3) »
d:\!\Projects\
Этот путь существует?
Цитата (camope3) »
2. Если имеется более одного поля Memo то можно ли сохранять данные в один файл и впоследствии считываться с одного файла, или для каждого поля нужен отдельный файл для сохранения?
Если имеется ввиду несколько объектов TMemo, то при использовании такого способа работы с файлами придётся использовать разные файлы для каждого объекта. Но при желании, можно сохранение и загрузку данных сделать самостоятельно из одного файла.
Цитата (camope3) »
3. Можно ли при сохранении не указывать путь, а настроить так, что бы данные сохранялись в директорию с которой была запущена форма?
Можно.
__________________
Под косматой елью, в темном подземелье,
Где рождается родник, — меж корней живет старик.
BSE вне форума  
Ответить с цитированием
Старый 07.07.2011, 08:13   [включить плавающее окно]   Вверх   #3
camope3
Мужской Начинающий
Автор темы
 
Регистрация: 23.01.2009
BSE
1.путь существует.
2.по подробней можно объяснить "Но при желании, можно сохранение и загрузку данных сделать самостоятельно из одного файла." Желание есть, навыков не хватает.
3.Если можно подробнее.
camope3 вне форума  
Ответить с цитированием
Старый 07.07.2011, 09:58   [включить плавающее окно]   Вверх   #4
BSE
Мужской Абсолютный
 
Аватар для BSE
 
Регистрация: 08.04.2009
Цитата (camope3) »
1.путь существует.
Целевой файл создаётся? Возможно, у программы нет прав вследствие работы UAC, например.
Цитата (camope3) »
2.по подробней можно объяснить "Но при желании, можно сохранение и загрузку данных сделать самостоятельно из одного файла."
http://pascal.guti.ru/files.html
Цитата (camope3) »
3.Если можно подробнее.
SaveToFile('1.txt');
__________________
Под косматой елью, в темном подземелье,
Где рождается родник, — меж корней живет старик.
BSE вне форума  
Ответить с цитированием
Старый 07.07.2011, 14:37   [включить плавающее окно]   Вверх   #5
camope3
Мужской Начинающий
Автор темы
 
Регистрация: 23.01.2009
BSE
По вопросу №1 Снят! на вкладке Events не было проставлено соответствующее указания. Радует одно, что додумался сам.
По вопросу №3 по такому методу SaveToFile('1.txt'); сохраняет не в каталог с программой а в каталог который выбран в поле Memo1
По вопросу №2 Буду грызть гранит науки
camope3 вне форума  
Ответить с цитированием
Старый 07.07.2011, 14:43   [включить плавающее окно]   Вверх   #6
BSE
Мужской Абсолютный
 
Аватар для BSE
 
Регистрация: 08.04.2009
Цитата (camope3) »
а в каталог который выбран в поле Memo1
Это какое такое поле?
__________________
Под косматой елью, в темном подземелье,
Где рождается родник, — меж корней живет старик.
BSE вне форума  
Ответить с цитированием
Старый 07.07.2011, 20:51   [включить плавающее окно]   Вверх   #7
camope3
Мужской Начинающий
Автор темы
 
Регистрация: 23.01.2009
Цитата (BSE) »
Это какое такое поле?
Если быть точнее то Memo1.Lines. А если быть еще точнее то форма разрабатывалась для копирования директорий со всем содержимым. Та вот если скажем в строке Memo1 вписан путь, по которому и копировалась директория вот туда и идет сохранение но ни как в директорию с программой.
camope3 вне форума  
Ответить с цитированием
Старый 08.07.2011, 00:02   [включить плавающее окно]   Вверх   #8
BSE
Мужской Абсолютный
 
Аватар для BSE
 
Регистрация: 08.04.2009
Цитата (camope3) »
Та вот если скажем в строке Memo1 вписан путь, по которому и копировалась директория вот туда и идет сохранение но ни как в директорию с программой.
На русский язык можно перевести? A то я ничего не понял, кроме того, что вы чего-то не понимаете, из-за чего программа работает не так, как надо. предлагаю изучить значения терминов тип, переменная, объект, поле и метод объекта.
__________________
Под косматой елью, в темном подземелье,
Где рождается родник, — меж корней живет старик.
BSE вне форума  
Ответить с цитированием
Старый 08.07.2011, 15:04   [включить плавающее окно]   Вверх   #9
camope3
Мужской Начинающий
Автор темы
 
Регистрация: 23.01.2009
Вопрос снят. Вина - невнимательность. Хотелось побыстрее - получилось как всегда. За предложение "предлагаю изучить значения терминов" спасибо, нужно будет этим заняться. Не очень люблю теорию, все таки лучше один раз увидеть нежели 10 раз прочитать. Но это мое мнение никому его не навязываю, особенно подрос тающей молодежи
Спасибо за отклики.
camope3 вне форума  
Ответить с цитированием
Ответ Создать новую тему


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 09:32. Часовой пояс GMT +3.


Powered by vBulletin® Version 3.8.4 Patch Level 5
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd. Перевод: zCarot