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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 02.07.2010, 09:24   #11
coolle
Пользователь
 
Регистрация: 29.06.2010
Сообщений: 38
По умолчанию

Код:
procedure TForm1.Timer1Timer(Sender: TObject);
begin
if FileExists('file.txt')=false then
begin
FileCreate('file.txt');
FileClose('file.txt');
end;
Memo1.Lines.LoadFromFile('file.txt');
end;
Ошибка:

[Error] Unit1.pas(79): Incompatible types: 'Integer' and 'String'

В чём проблема???

Цитата:
Сообщение от Stilet Посмотреть сообщение
Код правильный но работать не будет.
Зачем тебе именно создавать файл во во время проверки?
дак а тогда прверять не чего будет и снова ошибка.

Последний раз редактировалось Stilet; 02.07.2010 в 09:26.
coolle вне форума Ответить с цитированием
Старый 02.07.2010, 09:33   #12
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
и снова ошибка.
Чего это?
Код:
if FileExists('file.txt') then файл существует и его можно прочесть
Но учти - он может занят быть, и вот как раз на эту ошибку ты и попадаешься скорее всего. Тут нужно еще проверять не занят ли файл, т.е. попытаться открыть его на запись.

Ты скажи что ты хочешь написать уверен есть куча других способов понадежнее.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 02.07.2010, 09:34   #13
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

Начнем с того, что FileCreate это вообще-то функция.
Код:
FileClose(FileCreate('file.txt'));
Вообще, на форуме есть в начале хитрая строчка:
Правила форума | Исходники Delphi | Основы Delphi | Блог программистов | Рассылка | Конкурс программистов!
Вам это ни о чем не говорит?

Цитата:
Тут нужно еще проверять не занят ли файл, т.е. попытаться открыть его на запись.
Он у него и так занят - когда создает, то не закрывает .
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Старый 02.07.2010, 09:36   #14
DeKot
Участник клуба
 
Аватар для DeKot
 
Регистрация: 12.08.2008
Сообщений: 1,977
По умолчанию

Как сказал Stilet
Цитата:
Зачем тебе именно создавать файл во во время проверки?
Имеется ввиду в таймере.
Делай проверку наличия и создание (по необходимости) файла при инициализации программы после запуска (в том же OnCreate).
Если Вы не закрываете файл после работы с ним, то фактически создание или редактирование существующего файла происходит в буфере памяти, а на диске файла еще нет (при создании) или изменения не вносятся (при редактировании). Физически создание/изменение файла на диске происходит только после команды закрытия файла из программы.
И не сомневайся даже ... отдых - кайф, работа - лажа!

Последний раз редактировалось DeKot; 02.07.2010 в 09:42.
DeKot вне форума Ответить с цитированием
Старый 02.07.2010, 09:44   #15
coolle
Пользователь
 
Регистрация: 29.06.2010
Сообщений: 38
По умолчанию

чем дальше в лес тем больше дров...
я окончательно запутался (((
coolle вне форума Ответить с цитированием
Старый 02.07.2010, 09:45   #16
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

Я же тебе дал код - впихни ты его в свой таймер...
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Старый 02.07.2010, 09:55   #17
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
чем дальше в лес тем больше дров...
Ну дык вооружись топром - почитай книги про программирование, а потом уж и пробуй. Все так делают )
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 02.07.2010, 10:04   #18
coolle
Пользователь
 
Регистрация: 29.06.2010
Сообщений: 38
По умолчанию

Цитата:
Сообщение от Utkin Посмотреть сообщение
Я же тебе дал код - впихни ты его в свой таймер...
Код:
procedure TForm1.Timer1Timer(Sender: TObject);
begin
if FileExists('file.txt')=false then
begin
FileClose(FileCreate('file.txt'));
end;
Memo1.Lines.LoadFromFile('file.txt');
end;
Код сработал!!! Спасибо!
Utkin, прочитай мне пожалуйста это FileClose(FileCreate('file.txt'));
не понимаю я как можно в команде закрыть, умудриться создать...

Цитата:
Сообщение от Stilet Посмотреть сообщение
Ну дык вооружись топром - почитай книги про программирование, а потом уж и пробуй. Все так делают )
Именно для этого и существуют форумы, чтобы отправлять читать книги да?

Последний раз редактировалось coolle; 02.07.2010 в 10:07.
coolle вне форума Ответить с цитированием
Старый 02.07.2010, 10:07   #19
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

Цитата:
Сообщение от coolle Посмотреть сообщение
Код сработал!!! Спасибо!
Utkin, прочитай мне пожалуйста это FileClose(FileCreate('file.txt'));
не понимаю я как можно в команде закрыть, умудриться создать...
Сам читай . В посте #13 даже сказано где читать. И это, грибы хорошо помогают И иногда зеленый чай с клубникой...
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Старый 02.07.2010, 10:08   #20
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
FileClose(FileCreate('file.txt'));
Здесь сначала выполняется функция FileCreate, которая создает файл, и в параметр функции FileClose передает описание файла.
Это делается сразу без задействования дополнительных переменных.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
как убить процесс зная его имя? One.Love Win Api 14 18.02.2012 14:31
Убить процесс по заголовку окна Nice42ru Помощь студентам 27 21.01.2010 11:55
Как убить процесс(с++) progdev Общие вопросы C/C++ 2 22.11.2009 21:30
убить процесс по его идентификатору - Работа с процессами ACE Valery Общие вопросы C/C++ 8 04.06.2009 21:51
Убить процесс, md5, архивация Igoressicus Помощь студентам 1 16.01.2009 10:37