Dateien umbenennen

  • Hallo, ich habe mir vor kurzem einige Lieder runtergeladen.
    Bei den Liedern werden die Umlaute und ein ß anderst dargestellt. (ß=+ƒ, oe = o¦ê, ue = u¦ê, ae = a¦ê)
    Jetzt wollte ich mal schnell ein Skript schreiben, dass die Datei umbenennt mit normalen umlauten oder ue, oe und ae.
    Aber leider schaffe ich das nicht wirklich.
    Hier mal mein Skript:

    Spoiler anzeigen
    [autoit]


    #include <File.au3>
    #include <Array.au3>

    [/autoit] [autoit][/autoit] [autoit]

    Global $Files, $Path = @ScriptDir & "\Partylieder\Ich Schie+ƒ Mich Ab Vol. II - Extended Version (F)\"

    [/autoit] [autoit][/autoit] [autoit]

    $Files = _FileListToArray($Path)
    If Not (IsArray($Files) = 1) Then
    MsgBox(16, "Fehler", "Konnte Dateien nicht einlesen")
    Exit
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    _Arraydisplay($Files)

    [/autoit] [autoit][/autoit] [autoit]

    For $i = 1 To $Files[0]
    If StringInStr($Files[$i], "(+ƒ)") = 1 Then
    $Name = StringSplit($Files[$i], '+ƒ')
    If IsArray($Name) = 1 Then
    FileMove($Files[$i], $Name[1] & "ß" & $Name[2], 1)
    EndIf
    EndIf
    Next

    [/autoit] [autoit][/autoit] [autoit]

    _ArrayDisplay($Files)

    [/autoit]


    Ich hoffe ihr könnt mir helfen

    2 Mal editiert, zuletzt von morfi93 (12. Juli 2008 um 22:18)

  • Hi,
    vom Ansatz OK,
    würds jedoch eher mit Stringreplace machen.

    Spoiler anzeigen
    [autoit]

    #include <File.au3>
    #include <Array.au3>

    [/autoit] [autoit][/autoit] [autoit]

    Global $Files, $Path = @ScriptDir = "\Partylieder\Ich Schie+ƒ Mich Ab Vol. II - Extended Version (F)\"

    [/autoit] [autoit][/autoit] [autoit]

    $Files = _FileListToArray($Path)
    If Not (IsArray($Files) = 1) Then
    MsgBox(16, "Fehler", "Konnte Dateien nicht einlesen")
    Exit
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    _Arraydisplay($Files)

    [/autoit] [autoit][/autoit] [autoit]

    For $i = 1 To $Files[0]
    $neuer_name = StringReplace($Files[$i], "+ƒ", "ß")
    $neuer_name = StringReplace($neuer_name, "o¦ê", "oe")
    $neuer_name = StringReplace($neuer_name, "u¦ê", "ue")
    $neuer_name = StringReplace($neuer_name, "a¦ê", "ae")
    FileMove($Path & $Files[$i], $Path & $neuer_name, 1)
    Next

    [/autoit]
  • Hey, danke riesen thx an dich für deine schnelle und hilfreiche antwort.
    Funktioniert einwandfrei!
    :thumbup: