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

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

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

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 14.08.2008, 11:42   #1
kate158
Форумчанин
 
Регистрация: 01.08.2008
Сообщений: 383
По умолчанию вопрос по FileExists

Помогите, пожалуйста,справиться с такой задачей.
Есть эксель файл,с некими числами.Из экселя на форму экспортирую числа.Далее сохраняю их в текстовый файл.Есть проверка:если файл существует,появляется сообщение-'Файл существует!Заменить' и две кнопки-"да" и "нет".При выборе "да"-файл заменяется новым (код ниже).
if FileExists(f)then
begin
if MessageDlg('Файл существует!Заменить??', mtConfirmation, [mbYes,mbNo],0)=mrYES then
begin
DeleteFile(f);
s.SaveToFile(f);
end;
end;
Как можно записать,что,при выборе кнопки "нет"-в файле,сохраненном раннее,числа не будут заменяться?

Последний раз редактировалось kate158; 14.08.2008 в 11:56.
kate158 вне форума Ответить с цитированием
Старый 14.08.2008, 12:14   #2
Longedok
Пользователь
 
Аватар для Longedok
 
Регистрация: 14.07.2007
Сообщений: 40
По умолчанию

Если я вас правильно понял, вам нужно, обрабатывать не только нажатие на кнопку "Yes" но и на кнопку "No". Это можно сделать следующим образом:
Код:
  var
     res: integer;
  begin
    res := MessageDlg('text', mtConfirmation, [mbYes,mbNo], 0);
    if res = mrYes then
    begin
      ... //код выполняющийся по нажатию кнопки Yes
    end
    else if res = mrNo then
    begin
      ... //код выполняющийся по нажатию кнопки No
    end;
end;
Котэ покарает тебя, %username%!
Longedok вне форума Ответить с цитированием
Старый 14.08.2008, 12:25   #3
kate158
Форумчанин
 
Регистрация: 01.08.2008
Сообщений: 383
По умолчанию

Это понятно,что и для "нет" должен быть обработчик.не могу догнать что будет в месте
...//код выполняющийся по нажатию кнопки No
...
kate158 вне форума Ответить с цитированием
Старый 14.08.2008, 13:57   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Ну я бы добавлял во втором случае в конец файла через
AssignFile-Append-Write (в цикле)-CloseFile
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 14.08.2008, 14:00   #5
Longedok
Пользователь
 
Аватар для Longedok
 
Регистрация: 14.07.2007
Сообщений: 40
По умолчанию

Если файл существует, то нужно записать числа в другой файл? Если так, то нужно положить (не смог подобрать другого слова) на форму компонент TSaveDialog из закладки Dialogs, и написать следующий код:
Код:
var
  res: integer;
  path: string;
begin
  res := MessageDlg('text', mtConfirmation, [mbYes,mbNo], 0);
  if res = mrYes then
  begin
    ... //код выполняющийся по нажатию кнопки Yes
  end
  else if res = mrNo then
  begin
    if SaveDialog1.Execute = true then
      path := SaveDialog1.FileName;
    S.SaveToFile( path );
  end;
end;
path - это имя файла выбранного в диалоге сохранения файлов.
S - это ваш компонент, которым вы сохраняете файл
Котэ покарает тебя, %username%!
Longedok вне форума Ответить с цитированием
Старый 14.08.2008, 16:14   #6
kate158
Форумчанин
 
Регистрация: 01.08.2008
Сообщений: 383
По умолчанию

В общем,вот мой рабочий код.
Код:
 if not FileExists(f)then
  st.SaveToFile(f)
 else
  begin
  res := MessageDlg('Файл существует!Заменить?', mtConfirmation, [mbYes,mbNo],0);
  if res = mrYes then
  begin
   DeleteFile(f);
   st.SaveToFile(f);
  end
 end;
Если файл существует,возникает сообщение "Файл существует,заменить?".Выбираю-да-числа записываются новые.Нет-числа,ранее записанные в файле не изменяются.Просто раньше,когда выбиралась кнопка-нет-шла перезапись старых чисел.Сейчас все нормально.Спасибо за помощь.)

Последний раз редактировалось kate158; 14.08.2008 в 16:22.
kate158 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вопрос наверное про функции, а так точно даже не знаю про что. (Вопрос начинющего #6) Albert2008 Общие вопросы Delphi 4 21.08.2008 15:33
вопрос по сокетам и общение как в ICQ.Сложный вопрос... Руслантус Общие вопросы C/C++ 2 12.08.2008 21:10
Вопрос по Alt+F4 Михаил Юрьевич Общие вопросы Delphi 1 30.06.2008 00:40
TObject *Sender sergei64_89 Общие вопросы C/C++ 1 06.06.2008 13:36
Вопрос о КПК N!ckeL Свободное общение 3 05.06.2008 22:06