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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 09.04.2010, 13:33   #1
Shaitan63
Пользователь
 
Регистрация: 31.03.2008
Сообщений: 72
По умолчанию Создание файла если такого файла нету

У меня вот вопрос: нужно написать код, который обращался к папке и в случи если файла в папке нету(пример 46.txt) то он создавался и записывал в него данные.
Shaitan63 вне форума Ответить с цитированием
Старый 09.04.2010, 14:42   #2
RUSt88
Участник клуба
 
Регистрация: 29.12.2009
Сообщений: 1,166
По умолчанию

в делфи например параметр rewrite по-моему, чет такое
прогер C\C++\C#\Delphi
ася: [семь 3]-[97]-[1 шесть]
RUSt88 вне форума Ответить с цитированием
Старый 09.04.2010, 15:30   #3
SERG1980
Участник клуба
 
Аватар для SERG1980
 
Регистрация: 28.03.2007
Сообщений: 1,814
По умолчанию

можно так
Код:
var SL:TStringList;
if not FileExists('путь к файлу') then
begin
 SL:=TSteingList.Create;
 SL.Add('данные');
....
 SL.SaveToFile('путь сохранения');
 SL.Free;
end;
SERG1980 вне форума Ответить с цитированием
Старый 09.04.2010, 15:37   #4
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,238
По умолчанию

Shaitan63 - язык программирования какой? и под какую среду исполнения?

и ещё, а если такой файл в папке уже есть, что делать программе?
Если в любом случае записывать — тогда RUSt88 дал абсолютно верный совет - перезаписывайте файл, если его нет, он создастся, если же есть - то перезапишется.

А если реально надо анализировать, есть такой файл или нет, и, в зависимости от этого принимать решение, то:

если Pascal - то там либо поставить опцию игнорировать ошибки ввода/вывода ($I-} и пытаться открыть файл и анализировать IOResult
либо воспользоваться функцией поиска файла через FindFirst(..)

если речь идёт о Дельфи - то есть уже функция FileExists
Serge_Bliznykov вне форума Ответить с цитированием
Старый 09.04.2010, 18:30   #5
Shaitan63
Пользователь
 
Регистрация: 31.03.2008
Сообщений: 72
По умолчанию

сорри что невсе данные дал) delphi7 под XP sp2 в случии если такой файл есть то в него записывать данные из программы
Shaitan63 вне форума Ответить с цитированием
Старый 09.04.2010, 21:14   #6
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,238
По умолчанию

а вышесказанного не хватило?

ладно.
если файл нужно перезаписать (старые данные теряются, новые записываются):
Код:
  var f : TextFile;
begin
  AssignFile(f,'46.txt');
  Rewrite(f);
  WriteLn(f, 'Новая строчка в файле 46!!!');
  Flush(f);
  CloseFile(f);
end;
если данные в файл нужно ДОПИСЫВАТЬ в конец:
Код:
  var f : TextFile;
begin
  AssignFile(f,'46.txt');
  if FileExists('46.txt') then Append(f)
     else Rewrite(f);
  WriteLn(f, 'Дописанная строчка в файле 46!!!');
  Flush(f);
  CloseFile(f);
end;
Serge_Bliznykov вне форума Ответить с цитированием
Старый 09.04.2010, 23:26   #7
Shaitan63
Пользователь
 
Регистрация: 31.03.2008
Сообщений: 72
По умолчанию

всё понел спасибо завтро буду колдовать
Shaitan63 вне форума Ответить с цитированием
Старый 09.04.2010, 23:42   #8
Shaitan63
Пользователь
 
Регистрация: 31.03.2008
Сообщений: 72
По умолчанию

насколько я понел этот код
Код:
if not FileExists('путь к файлу') then
рашифровывается как- если файла нет, то...

а этот код
Цитата:
SL:=TSteingList.Create;
SL.Add('данные');
....
SL.SaveToFile('путь сохранения');
SL.Free;
создаёт лист с текстовыми данными и сохроняет его по нужному адрессу?
Shaitan63 вне форума Ответить с цитированием
Старый 10.04.2010, 09:12   #9
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,238
По умолчанию

точно.
только:
Цитата:
Код:
SL:=TStringList.Create;
Serge_Bliznykov вне форума Ответить с цитированием
Старый 10.04.2010, 14:16   #10
DeKot
Участник клуба
 
Аватар для DeKot
 
Регистрация: 12.08.2008
Сообщений: 1,977
По умолчанию

Осмелюсь добавить к вышесказанному - в постах #1 - #6 рассматривается классический (паскалевский) метод работы с текстовыми файлами, а
Цитата:
SL:=TStringList.Create;
SL.Add('данные');
....
SL.SaveToFile('путь сохранения');
SL.Free;
это уже работа с файлом , как с объектом (ООП) класса TStrings.
И не сомневайся даже ... отдых - кайф, работа - лажа!
DeKot вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Шифрование ссылок и если решение на php вот такого скрипта kaviga PHP 10 10.01.2010 23:39
Если в проекте нет файла .dcu furstenberg Общие вопросы Delphi 10 28.09.2009 11:02
Если еще нет файла, данные равны нулю valerij Microsoft Office Excel 29 22.07.2009 15:23
Открытие файла и создание графика на основе чисел из файла Simon..14 Общие вопросы C/C++ 8 09.06.2009 10:18
Если нету Flash то IMG!?!?!?! DRUG_ADDICT HTML и CSS 5 27.02.2008 01:23