Модераторы: Snowy, MetalFan, bems, Poseidon

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> работа с текстовыми файлами 
V
    Опции темы
mrbrooks
Дата 25.11.2008, 14:27 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


трололомен
****


Профиль
Группа: Завсегдатай
Сообщений: 4259
Регистрация: 4.10.2006
Где: Дол Гулдур

Репутация: нет
Всего: 306



Цитата(aleksh @  25.11.2008,  14:21 Найти цитируемый пост)
для бд да, но мы же видим пример, из которого следует, что находит файл, грузит в листбокс, потом человек его правит или просто смотрит и отдает на запись, а если в это время найдется еще один файл, или несколько? 

точно камрад  - проворонил. 

правда как-то это все своеобразно - редактировать в ListBox  smile 

честно говоря не совсем понятно что нужно править юзверю и не проще ли эту правку делать автоматически при парсинге строки до записи в БД. А автор?  smile 

PM MAIL   Вверх
aleksh
Дата 25.11.2008, 14:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 609
Регистрация: 8.7.2008

Репутация: 1
Всего: 13



Цитата(Martisha @  25.11.2008,  14:12 Найти цитируемый пост)
нет, не ручками

тогда зачем заморачиваться с листбокс? есть хороший класс, tstringlist, думается, он вполне подойдет

а попробуй так
Код

procedure TForm1.EditFile(FileName:string);
begin
 ListBox1.Items.add(FileName); //или как там строку добавить
end;

тогда в лист боксе будут имена всего, что он хотел загрузить, согласно твоему примеру, в конце должно было показываться содержимое последнего найденного файла

Добавлено через 3 минуты и 44 секунды
Цитата(Martisha @  25.11.2008,  14:24 Найти цитируемый пост)
загружать, обрабатьвать, выгружать в бд, а текстовый файл из папки, после обработки  удалять?

если это все в editfile, то никаких проблем, но прогрмма будет недоступна, во время работы с файлами, и файл, по-хорошему, никому нельзя трогать, это же не критично?
и еще эти файлы -- они все в одной папке, или будут и в вложенных? от этого зависит сложность цикла
PM MAIL   Вверх
Martisha
Дата 25.11.2008, 14:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 197
Регистрация: 15.10.2008
Где: казань

Репутация: нет
Всего: 1



Цитата(mrbrooks @  25.11.2008,  14:27 Найти цитируемый пост)
не проще ли эту правку делать автоматически при парсинге строки до записи в БД   

это как?
Цитата(aleksh @  25.11.2008,  14:29 Найти цитируемый пост)
тогда зачем заморачиваться с листбокс? есть хороший класс, tstringlist, думается, он вполне подойдет

я еще не так хорошо классы знаю, вот и заморачиваюсь(
PM MAIL ICQ   Вверх
aleksh
Дата 25.11.2008, 14:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 609
Регистрация: 8.7.2008

Репутация: 1
Всего: 13



Цитата(Martisha @  25.11.2008,  14:34 Найти цитируемый пост)
это как?

парсить -- значит обрабатывать

а по поводу TStringList, рекомендую заглянуть в справку, ведь листбокс, это всего лишь визуализация работы с данным классом, свойства листбокса, те, что после items -- это свойства стринглиста

выяснилось, что он там находит и передает?
PM MAIL   Вверх
Martisha
Дата 25.11.2008, 14:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 197
Регистрация: 15.10.2008
Где: казань

Репутация: нет
Всего: 1



Цитата(aleksh @  25.11.2008,  14:29 Найти цитируемый пост)
и еще эти файлы -- они все в одной папке, или будут и в вложенных?

все в одной

Цитата(aleksh @  25.11.2008,  14:29 Найти цитируемый пост)
если это все в editfile, то никаких проблем, но прогрмма будет недоступна, во время работы с файлами, и файл, по-хорошему, никому нельзя трогать, это же не критично?

да нет, не критично

Цитата(mrbrooks @  25.11.2008,  14:27 Найти цитируемый пост)
честно говоря не совсем понятно что нужно править юзверю

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

Добавлено через 2 минуты и 25 секунд
Цитата(aleksh @  25.11.2008,  14:40 Найти цитируемый пост)
парсить -- значит обрабатывать

обработка файлов будет не в программе происходить, мне просто нужно вытащить из папки файлы, по одному загружать в бд и там уже я буду их обрабатывать 
PM MAIL ICQ   Вверх
mrbrooks
Дата 25.11.2008, 14:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


трололомен
****


Профиль
Группа: Завсегдатай
Сообщений: 4259
Регистрация: 4.10.2006
Где: Дол Гулдур

Репутация: нет
Всего: 306



Цитата(Martisha @  25.11.2008,  14:43 Найти цитируемый пост)
в общем в папку заносятся текстовые файлы(по одному в час), статистика траффика..нужно обработать эти файлы, т.е. разбить на поля(в виде таблицы) и занести в бд, вот собственно и все

это и должен делать парсер

PM MAIL   Вверх
Martisha
Дата 25.11.2008, 14:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 197
Регистрация: 15.10.2008
Где: казань

Репутация: нет
Всего: 1



Цитата(mrbrooks @  25.11.2008,  14:49 Найти цитируемый пост)
это и должен делать парсер

т.е. напрямую с бд работать?
PM MAIL ICQ   Вверх
mrbrooks
Дата 25.11.2008, 14:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


трололомен
****


Профиль
Группа: Завсегдатай
Сообщений: 4259
Регистрация: 4.10.2006
Где: Дол Гулдур

Репутация: нет
Всего: 306



Martisha, да. без всякого визуального отображения содержимого файлов. 
PM MAIL   Вверх
aleksh
Дата 25.11.2008, 14:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 609
Регистрация: 8.7.2008

Репутация: 1
Всего: 13



тогда можно так:
Код

Procedure TForm1.ScanFolder(Dir:String);
Var
 SearchRec:TSearchRec;
begin
 try
  if Dir<>'' then Dir:=IncludeTrailingPathDelimiter(Dir); //убедились что получили не пустой адрес, и что он заканчивается символом "\"
  if FindFirst(Dir+'*.*', faAnyFile, SearchRec)=0 then //если что-то нашли
   repeat 
      begin
       if AnsiUpperCase(ExtractFileExt(SearchRec.name)) = '.TXT' then //проверили расширение
       EditFile(Dir+SearchRec.name); //вызвали функцию, передав ей имя файла
      end;
   until FindNext(SearchRec)<>0;
  FindClose(SearchRec);
 finally
 end;
end;

а потом файл загружаем в стринглист и так далее, но для начала надо убедится, что он хоть что-то находит
PM MAIL   Вверх
Martisha
Дата 25.11.2008, 15:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 197
Регистрация: 15.10.2008
Где: казань

Репутация: нет
Всего: 1



Цитата(mrbrooks @  25.11.2008,  14:56 Найти цитируемый пост)
да. без всякого визуального отображения содержимого файлов.

замечательно)
Цитата(aleksh @  25.11.2008,  14:57 Найти цитируемый пост)
для начала надо убедится, что он хоть что-то находит 

как же это сделать?
PM MAIL ICQ   Вверх
aleksh
Дата 25.11.2008, 15:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 609
Регистрация: 8.7.2008

Репутация: 1
Всего: 13



Цитата(Martisha @  25.11.2008,  15:01 Найти цитируемый пост)
как же это сделать?

по разному можно, например дописать строчку, первой в editfile()
Код

showmessage(filename); //filename -- это то, что передаем этой функции

тогда, когда что-то найдется, перед обработкой появится сообщение с именем файла, если имя корректно, то проблемы не с поиском, если не корретно, то надо смотреть, что пишет, а если ничего не находит, хоть и должно, то надо прошагать поиск. известно как это делать?
PM MAIL   Вверх
Martisha
Дата 25.11.2008, 15:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 197
Регистрация: 15.10.2008
Где: казань

Репутация: нет
Всего: 1



Цитата(aleksh @  25.11.2008,  15:08 Найти цитируемый пост)
известно как это делать?

попробую..спасибо

Добавлено через 8 минут и 21 секунду
 
Цитата(mrbrooks @  25.11.2008,  14:56 Найти цитируемый пост)
без всякого визуального отображения содержимого файлов.  

где можно об этом подробнее почитать?
PM MAIL ICQ   Вверх
aleksh
Дата 25.11.2008, 15:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 609
Регистрация: 8.7.2008

Репутация: 1
Всего: 13



Цитата(Martisha @  25.11.2008,  15:24 Найти цитируемый пост)
где можно об этом подробнее почитать?

смотря о чем конкретно, в соответсвующем разделе на форуме или в DKRB
когда все получится не забудь галочку теме поставить
PM MAIL   Вверх
Martisha
Дата 26.11.2008, 08:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 197
Регистрация: 15.10.2008
Где: казань

Репутация: нет
Всего: 1



Цитата(aleksh @  25.11.2008,  15:58 Найти цитируемый пост)
в DKRB

что это такое?

Цитата(aleksh @  25.11.2008,  15:58 Найти цитируемый пост)
когда все получится не забудь галочку теме поставить 

обязательно! ))
PM MAIL ICQ   Вверх
mrbrooks
Дата 26.11.2008, 08:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


трололомен
****


Профиль
Группа: Завсегдатай
Сообщений: 4259
Регистрация: 4.10.2006
Где: Дол Гулдур

Репутация: нет
Всего: 306



Цитата(Martisha @  26.11.2008,  08:08 Найти цитируемый пост)
что это такое

как я понимаю - база знаний по Дельфи  smile 
PM MAIL   Вверх
Страницы: (3) Все 1 [2] 3 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Для новичков"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0740 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.