Am 10.02.2010 um 15:04 schrieb Robert Lehner:

> Hallo,
> 
> ich möchte in Dateinamen die "/" in "_" ersetzen.
> 
> Leider kommt es mit folgendem Code zum Absturz:
> 
>  Dim i As integer
>  dim folder, file as folderItem
>  dim t As string
>  folder=selectfolder
>  if folder<>nil then
>    start:
>    for i=1 to folder.count
>      file=folder.item(i)

Für diese Zeile würde ich auf jeden Fall "file = folder.TrueItem(i)" nehmen. 
Enthält der Ordner nämlich Aliasse, erhältst Du mit .item(i) einen Zeiger auf 
die Datei/den Ordner, auf den das Alias verweist; .TrueItem(i) liefert einen 
Zeiger auf das Alias selbst.

>      t=file.name
>      t=replaceall(t,chr(47),"_")

Warum nimmst Du hier nicht einfach t = ReplaceAll(t, "/", "_")? Das sollte zwar 
für die Ausführbarkeit des Codes keinen Unterschied machen, aber beim späteren 
Lesen des Quellcodes ist sofort ersichtlich, welches Zeichen in dieser Zeile 
ersetzt wird.

>      file.name=t
>      goto start
>    next
>  end if


Ansonsten sehe ich auf den ersten Blick keine Probleme. Werde den Code gleich 
mal testen und mich noch mal melden, wenn ich noch etwas herausfinde...

Gruß
Christian


  • [no subject] Robert Lehner
    • Re: Christian Dorn
      • Re: Christian Dorn
    • Re: Michael Köhler
      • Re: Christian Dorn
        • Re: Michael Köhler

Antwort per Email an