Autor Beitrag
Shoppix
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 19



BeitragVerfasst: Mo 28.03.05 00:01 
Hallo,

also will einen Ordner nach *.TXT durchsuchen und dann nur die Dateinamen in einer Listbox ausgeben.

Das Durchsuchen, sowie die Ausgabe in eine Listbox ist kein Problem (ich benutzte darür die FindFile Funktion). Aber er schriebt bei mir im Moment den gesammten Pfad der Datei hin, und ich will ja nur den Dateinamen...

Ich danke allen die sich "wiedermal" sich mit meinen Probs auseinandersetzten.

MfG
Shoppix
SandTarnFarbe
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 26

Win XP, Win 2003 Server
D7 Pers
BeitragVerfasst: Mo 28.03.05 00:13 
Ich würde es mit ExtractFileName(Dateipfad) probieren - sollte eigentlich hinhauen!

@Deine Probleme: Wenn mehr nicht ist, kann ich das gut verschmerzen :lol:
Lannes
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 2352
Erhaltene Danke: 4

Win XP, 95, 3.11, IE6
D3 Prof, D4 Standard, D2005 PE, TurboDelphi, Lazarus, D2010
BeitragVerfasst: Mo 28.03.05 00:19 
Hallo,

so:
ausblenden Delphi-Quelltext
1:
showmessage(ExtractFileName('C:\@archiv\test.txt'));					


Schon mal selbst in der Delphi-Hilfe oder hier im Forum gesucht?
Gib mal im Delphi-Quelltext-Editor "ExtractFile" ein, Cursor in den Begriff setzen und F1-Taste betätigen. :idea:

//Edit : zu spät :tongue:

_________________
MfG Lannes
(Nichts ist nicht Nichts) and ('' <> nil ) and (Pointer('') = nil ) and (@('') <> nil )
Shoppix Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 19



BeitragVerfasst: Mo 28.03.05 10:31 
Hallo,
ich bombe euch mal noch mal mit nem QT
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
Procedure FindFiles (aPath, aFindMask: String; aWithSub: Boolean; aResult: tStrings);
Var
  FindRec: tSearchRec;
Begin
  // Wenn die Stringliste nil ist oder aPath oder aFind nicht angegeben ist
  // dann raus
  If (aPath = '') or (aFindMask = '') or Not Assigned (aResult) Then
    Exit;

  // Wenn am Ende der Pfadangabe noch kein \ steht, dieses hinzufügen
  If aPath[Length (aPath)] <> '\' Then
    aPath := aPath + '\';

  // Im aktuellen Verzeichnis nach der Datei suchen
  If FindFirst (aPath + aFindMask, faAnyFile, FindRec) = 0 Then
    Repeat
      If (FindRec.Name <> '.') and (FindRec.Name <> '..') Then
        // ...Ergebnis in die Stringlist einfügen
        aResult.Add ({aPath +}FindRec.Name);  //da ich nur den dateinamen will habe ich aPath rausgenommen

    Until FindNext (FindRec) <> 0;
  FindClose (FindRec);


so ich habe ja aPath rausgenommen, damit ich nur den Dateinamen habe. Aber der gibt mir immer noch den Dateinamen mit " .TXT " aus. kann man das auch ohen .TXT ausgeben...

bidde um Hilfe;)
Shoppix
MathiasSimmack
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Mo 28.03.05 10:32 
s. Delphi-Hilfe -> ChangeFileExt. Als zweiten Parameter einen Leerstring angeben.
Shoppix Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 19



BeitragVerfasst: Mo 28.03.05 12:53 
jo das hat geklappt...froi
hier fals jemand sie den QT mal lesen möche,...
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
Procedure FindFiles (aPath, aFindMask: String; aWithSub: Boolean; aResult: tStrings);
Var
  FindRec: tSearchRec;
  CFE:string;
Begin
  // Wenn die Stringliste nil ist oder aPath oder aFind nicht angegeben ist
  // dann raus
  If (aPath = '') or (aFindMask = '') or Not Assigned (aResult) Then
    Exit;
  // Wenn am Ende der Pfadangabe noch kein \ steht, dieses hinzufügen
  If aPath[Length (aPath)] <> '\' Then
    aPath := aPath + '\';
  // Im aktuellen Verzeichnis nach der Datei suchen
  If FindFirst (aPath + aFindMask, faAnyFile, FindRec) = 0 Then
    Repeat
      If (FindRec.Name <> '.') and (FindRec.Name <> '..') Then
        // ...Ergebnis in die Stringlist einfügen
        Begin
        CFE:=ChangeFileExt(FindRec.Name, '');
        aResult.Add ({aPath +}CFE); //Pfad ausschließen...
        end;
    Until FindNext (FindRec) <> 0;
  FindClose (FindRec);
End;


zum aufrufen
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
procedure TSuchKontakt.ComboBoxDropDown(Sender: TObject);
begin
combobox.clear;
FindFiles (unit1.savedate, '*.txt', false, combobox.Items);
end;


jetzt hab ich aber doch noch ne frage wie kann ich das aus einem anderen Form aufrufen einefach so hinschriebn funzt net da sagt er mir: Undefinierte bezeichnung...

MfG
shoppix