Wie Dateinamen auslesen durch Pfadangabe zur Datei.

  • Also bis jetzt muss man folgende Angaben machen:

    Code
    Beispiel1: 
    Exename=s1 
    exepfad =C:\Users\Administrator\Desktop\s1\S1\s1.exe
    Code
    Beispiel2: 
    Exename=s2 
    exepfad =C:\Users\Administrator\Desktop\s1\S2\s2.exe

    Wie kann man das einfacher machen ohne immer den exenamen angeben zu müssen?


    Ich habe ja schon gelernt wie man mit stringreplace die ".exe" wegmacht. Aber wie mache ich den Pfadnamen weg, sodass ich nurnoch den namen "s2" habe? Der Dateipfad ist auch nicht immer gleich sondern wird vom benutzer festgelegt.


    Hat jemand einen Lösungsvorschlag? :love:

    Einmal editiert, zuletzt von Sp4wnY (8. Mai 2009 um 16:33)

  • Du kannst stringsplit verwenden mit den "\" Zeichen und dann $splitvariable[$splitvariable[0]] verwenden. Dann benutzt du stringreplace und schon hast du den Namen raus :D

    MfG
    Conan (Nur Mitlesend)
    Schon lange dabei

  • achso ja stringreplace verstehe ich

    nur nicht wie das mit dem "/" gehen soll... gibt doch mehrere "/" in der Pfadangabe

    StringSplit ( "string", "delimiters" [, flag ] )
    flag = 0 (default), each character in the delimiter string will mark where to split the string


    Was hat es mit der Splitvariablen auf sich?

  • [autoit]

    $split=Stringsplit($Pfad,"\")
    $split[$split[0]]= $dateiname mit Endung

    [/autoit]


    Da $split[0] die Anzahl des Arrays wiedergibt und der letzte Array der Dateiname ist

    MfG
    Conan (Nur Mitlesend)
    Schon lange dabei

  • Also bei beiden Lösungen bekomme ich ein

    Stringsplit
    sringsplit^Error

    Missing separator character after keyword :-/


    [autoit]

    Run($exepfad)
    $array=StringSplit($exepfad,","\")
    MsgBox(0,"",StringTrimRight($array[$array[0]],4))

    [/autoit]


    [autoit]

    Run($exepfad)
    $split=Stringsplit($exepfad,"\")
    $split[$split[0]]= $exepfad

    [/autoit]


    EDIT: Probier mal selber bisschen rum, ich meld mich dann :)

    2 Mal editiert, zuletzt von Sp4wnY (8. Mai 2009 um 16:22)

  • [autoit]

    Run($exepfad)
    $array=StringSplit($exepfad,"\")
    $exepfad=StringTrimRight($array[$array[0]],4)

    [/autoit]


    Funzt supper! Ich verstehe die Syntax, vielen vielen dank! :thumbup: :thumbup: :thumbup: