Back flash in einer Variable

  • moin moin,

    habe da ein Problem beim Erstellen einer *.ini Datei.
    Habe eine Variable mit einen "\" die mir dann aber einen Neuen Ordner bis zum "\" anlegt und die *.ini nach dem "\".

    Hatte es mit dem erstellen eines Files Probiert.

    [autoit]

    $k1 = FileOpen(@ScriptDir & "\Skripte\Start\Liste\" & GUICtrlRead($combo) & ".ini", 10)

    [/autoit]


    und mit dem erstellen einer *.ini

    [autoit]

    IniWrite(@ScriptDir & "\Skripte\Start\Liste\" & GUICtrlRead($combo) & ".ini", "", "", "")

    [/autoit]

    Wird die *.ini auch nicht erstellt.
    Wobei in beiden Fällen " $combo = meine\seine " ist.

    Kann man das irgent wie umgehen das der "\" nicht als zeichen angesehen wird ?


    mfg
    oh-ha

    Es gibt drei Wahrheiten: deine Wahrheit, meine Wahrheit und die Wahrheit

    Einmal editiert, zuletzt von oh-ha (12. September 2010 um 10:59)

  • moin Oscar

    Also gibt es da keine möglichkeit das zu umgehen ?

    Könnte man es so machen das ein "\" in ein "-" gewandelt wird sollte da mal ein "\" in der Variablen vorkommen?
    Und wenn ja wie?

    mfg
    oh-ha

    Es gibt drei Wahrheiten: deine Wahrheit, meine Wahrheit und die Wahrheit

  • Danke dir
    man man, manchmal hat man aber auch Tomaten auf den Augen.

    Habe es nun so gemacht:

    [autoit]

    $lesekopf1 = StringReplace(GUICtrlRead($combo), "/", "-", 0, 2)
    $k1 = FileOpen(@ScriptDir & "\Skripte\Start\Liste\" & $lesekopf1 & ".ini", 10)
    FileClose($k1)

    [/autoit]

    mfg
    oh-ha

    Es gibt drei Wahrheiten: deine Wahrheit, meine Wahrheit und die Wahrheit

  • Ich habe zwar immer noch nicht so richtig begriffen wo das Problem liegt, aber anscheinend suchst Du nur eine Möglichkeit, den Backslash in einem Dateinamen zu wandeln. Das er im Dateinamen nicht vorkommen darf, beschränkt ja das Dateisystem von Windows und nicht AutoIt.

    Benutze in deine FileOpen/IniWrite-Funktion einfach:

    [autoit]

    StringReplace(GUICtrlRead($combo), "\", "_")

    [/autoit]

    Zur Nutzung dieses Forum's, ist ein Übersetzer für folgende Begriffe unerlässlich:

    "On-Bort, weier, verscheiden, schädliges, Butten steyling, näckstet, Parr, Porblem, scripe, Kompletenz, harken, manuel zu extramieren, geckukt, würglich, excell, acces oder Compilevorgeng"

  • [autoit]

    $IniName = StringReplace(GUICtrlRead($Combo),"/","-") ;In dem String GuiCtrlRead($Combo) werden alle "/" durch "-" ersetzt
    If Not FileExists(@ScriptDir & "\Skripte\Start\Liste\" & $IniName & ".ini") Then DirCreate(@ScriptDir & "\Skripte\Start\Liste\") ;Es wird abgefragt, ob schon ein Ordner besteht
    IniWrite(@ScriptDir & "\Skripte\Start\Liste\" & $IniName & ".ini", "Sektion 1", "Schlüssel 1", "Ich hoffe ich konnte helfen...") ;Die Ini-Datei wird erstellt und mit Daten gefüllt

    [/autoit]
    [autoit]


    Func Ulam($n)
    Return 1
    EndFunc

    [/autoit]


    Rekursion FTW :D