XGM Forum
Сайт - Статьи - Проекты - Ресурсы - Блоги

Форуме в режиме ТОЛЬКО ЧТЕНИЕ. Вы можете задать вопросы в Q/A на сайте, либо создать свой проект или ресурс.
Вернуться   XGM Forum > Общение> Hard & Soft
Ник
Пароль
Войти через VK в один клик
Сайт использует только имя.

Ответ
 
Zombain

offline
Опыт: 0
Активность:
Поиск в .ini
Нужна програмаа для поиска слова в .ini документах, причем не в 1 документе, а в целой папке сразу. Adobe Dreamweaver CS4 не подошел.
Старый 27.05.2011, 14:28
Hanabishi
COOL STATUS
offline
Опыт: отключен
конкретней опиши задачу, тебе нужно чтобы имена файлов выдавало, содержащих слово?
Старый 27.05.2011, 21:37
Zombain

offline
Опыт: 0
Активность:
Имена и строку.
Старый 27.05.2011, 22:55
Wulfrein
где я?
offline
Опыт: 88,142
Активность:
Zombain, виндовский поисковик ищет внутри ini
ну а строку можно найти стандартным поиском текстового редактора
Wulfrein добавил:
хотя если тебе нужен номер строки, будет сложнее)
Старый 27.05.2011, 23:00
Zombain

offline
Опыт: 0
Активность:
Wulfrein,
Не помогает, это не совсем обычные .ini, они под вэб заточены. Виндоус поиск мимо них проходит.
Старый 29.05.2011, 14:12
ELForcer
Сижу only Hard & Soft
offline
Опыт: 1,593
Активность:
Ну можно разве что написать парсер в Delphi
Кидаешь TListBox на форму и кнопку

Прописываешь код для кнопки поиска нужных файлов по фильтру в папке, скажем C:\Windows
Код:
procedure TForm1.Button1Click(Sender: TObject); 
      var sr:TSearchRec; 
      Result:word; 
      begin 
          ChDir('C:\windows');//меняем папку на C:\Windows 
          Result := FindFirst ('*.ini',faAnyFile,sr); 
          ListBox1.Clear; 
          While result=0 do 
      Begin 
             ListBox1.Items.add(sr.name); 
       Result:=FindNext (sr); 
      End; 
      end;


Вот моя наработка парсера.

Код:
//-----------------------------------------------------------------------------
Function TFSettings.LoadSettings (LS:String):String;
var
  FileSettings:Textfile; {Файл настроек}
  I:Integer;
  S:String;
  A:Byte;
Begin
A:=0;
try
  AssignFile(FileSettings,'Settings.ini');
  Reset(FileSettings);
    while A <> 255 do begin
    A:=A+1;
      Readln(FileSettings, S); {Чтение строки}
      If Pos(LS,S)<> 0 then begin{Если эта строка}
        I:=Length(LS)+1;
        Delete (S,1,I); {Удаляем хлам}
        A:=255;
      end;
    End;
           
  CloseFile(FileSettings);
  LoadSettings:=S;
except

//Вывод диалога с комментарием ошибки
on e: Exception do begin
          //Создание формы диалога
          FDialog.Message.Clear;
          FDialog.Message.Lines.Add('При чтении файла настроек Settings.ini произошла ошибка:');
          FDialog.Message.Lines.Add(e.Message);
          FDialog.ShowDialog('Ошибка','IconDialogError.jpg','OK','','');
try
    CloseFile(FileSettings);
  LoadSettings:= 'Ошибка';
except
End;


End;



End;
End;

Этот парсер рассчитан на чтение вида как ПАРАМЕТР=ЗНАЧЕНИЕ, где вместо = может быть любой символ.
Вызывается LoadSettings(ПАРАМЕТР)

В общем тебе остается только создать цикл открытия полученных по фильтру файлов и этим парсером читать оттуда тебе данные.
Старый 31.05.2011, 18:03
Ответ

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

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

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

BB-коды Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход



Часовой пояс GMT +3, время: 22:00.