Zufalls Datei

Zé Braunenko

Grünschnabel
Hallo an alle,
Ich wollte mal so eine Art Voting Programm für ein Internet Radio erstellen. Die PHP Seite und einiges anderes habe ich schon im Programm soweit fertig. Nur weiss ich nicht wie ich per Zufall eine Datei jeweils aus einem Ordner herauspicksen kann. Bräuchte nur den Dateinamen. Bitte um Hilfe
 
Hallo

Also mir sind 2 Möglichkeiten bekannt.

entweder per array:

Visual Basic:
dim Daten() as String
Daten(0) = "Datei1.php"
Daten(1) = "Datei2.php"
....

RANDOMIZE
dim Zufallsdatei as String

Zufallsdatei = Daten(int(rnd * (UBound(Daten) - LBound(Daten))))

oder..

Visual Basic:
RANDOMIZE
dim Zufallsdatei as String
Select Case Int(Rnd * Anzahl_d_Daten))
    Case 0:
    Zufallsdatei = "Datei1.php"
    Case 1:
    Zufallsdatei = "Datei2.php"
End Select

lg

Philipp9494
 
Oder noch einfacher: Setz einfach eine FileListBox auf deine Form (eventuell noch die Pattern ala "*.php" anpassen), die maximale Anzahl an Dateien im Verzeuchnis ermittelst du dann per
Visual Basic:
Anzahl = File1.ListCount

Dann brauchst du per Rnd (wie schon von Philipp9494 beschrieben) nur noch eine Nummer ermitteln und dann per
Visual Basic:
Name = File1.List(Zufallszahl - 1)
den Namen ermitteln.


Der Doc!
 
Danke für die Antworten und Beispiele. Aber die Sache ist die das es nichts mit den php dateien zu tun hat sondern mit mp3 und anderen Soundformaten. Das Programm soll nur aus einem Ordner zufällig 5 Dateien auswählen und von denen die Dateinamen entnehmen.
 
Wie schon gesagt, am einfachsten geht das mit einer FileListBox:
Visual Basic:
File1.Path = "C:\" 'dein Pfad
File1.Pattern = "*.mp3;*.wav;*.ogg" 'kannst noch weitere hinzufügen
Anzahl = File1.ListCount 'Anzahl der Elemente im Ordner einlesen
Zufall = Int(Anzahl * Rnd) 'Zufallselement (Indexnummer) ermitteln
Element = File1.List(Zufall) 'Element auslesen


Der Doc!
 
Wie schon gesagt, am einfachsten geht das mit einer FileListBox:
Visual Basic:
File1.Path = "C:\" 'dein Pfad
File1.Pattern = "*.mp3;*.wav;*.ogg" 'kannst noch weitere hinzufügen
Anzahl = File1.ListCount 'Anzahl der Elemente im Ordner einlesen
Zufall = Int(Anzahl * Rnd) 'Zufallselement (Indexnummer) ermitteln
Element = File1.List(Zufall) 'Element auslesen


Der Doc!

Muss man nicht zuerst noch über der Zeile Zufall = Int(...) auch noch Randomize einfügen soweit ich mich erinnern kann gibts sonst nach dem Neustart des Programms wieder die gleichen Files in genau der Reihenfolge oder verwechsel ich da was :/
 
Ja, aber ich hab mal angenommen, das die Randomize-Anweisung ja gleich in der Form_Load-Prozedur angewendet wird. Ansonsten würde sie natürlich am Anfang des Codes hingehören.


Der Doc!
 
eigendlich ist dies nur ein sinnloser Kommentar.
"Zufällige Dateien, wer braucht denn so´n Quatsch?"
 
Zurück