Otwarcie kilku plików o takim samym początku nazwy

0

Mam nadzieję, że dobrze uda mi się opisać problem.
w zmiennej 'sciezka : string' jest zapisana ścieżka do katalogu w którym znajduje się kilka plików:
tekst.docx
tekst
.docx
tekst*.docx
gwiazdka oznacza dowolny ciąg znaków.
Co należy wpisać w procedurze kliknięcia buttona, aby otworzyły się wszystkie pliki których nazwa zaczyna się na 'tekst' i kończy rozszerzeniem '.docx'.
Nie mogą to być wszystkie pliki 'docx' ponieważ będą tam również pliki o innych nazwach.

0

FindFirst(), FindNext(), FindClose()

0

Jednym ze sposobów jest:

Po pierwsze założenie filtra na wczytanie tylko plików z rozszerzeniem *.docx . Kolejny krok to sprawdzenie czy nazwa pliku zaczyna się od wyrazu "tekst".

itp.

0
Azarien napisał(a)

FindFirst(), FindNext(), FindClose()

Dzięki za podpowiedź.
Tak więc stworzyłem coś takiego:

var
  SearchResult : TSearchRec;
  plik : string;
  plik2 : PAnsiChar;
  sciezka : string;
begin
sciezka:='D:\test\';
  if FindFirst(sciezka+'zz*.txt', faAnyFile, SearchResult) = 0 then
  begin
    repeat
      plik:=(sciezka+(SearchResult.Name));
      plik2:=PCHAR(plik);
      ShellExecute(Handle, 'open', plik2, nil, nil, SW_SHOW);
    until FindNext(SearchResult) <> 0;
    FindClose(searchResult);
  end;
end;

Zmienna 'sciezka' w docelowym programie, będzie przypisana w innej części.
Powyższy kod otwiera wszystkie pliki zaczynające się od 'zz', a kończące '.txt', znajdujące się w lokalizacji zadeklarowanej jako 'sciezka'.

Może kiedyś się to komuś przyda, ja szukałem i nie udało mi się odszukać czegoś takiego.

O_o jeżeli uważasz, że te kilka linijek kodu jest warte więcej jak 50zł, to podaj cenę, bo to interesujące.

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0